Please review https://github.com/julianhyde/calcite/tree/2112-mvnw <https://github.com/julianhyde/calcite/tree/2112-mvnw>, and give it a try in your own sandbox.
I have built on the original patch. We no longer need to include a .jar or .java. And I’ve updated the documentation to use ‘./mvnw’ rather than ‘mvn’. Julian > On Aug 28, 2018, at 10:35 AM, Julian Hyde <jh...@apache.org> wrote: > >> On Aug 28, 2018, at 8:10 AM, Josh Elser <els...@apache.org> wrote: >> >> Is it worthwhile to share the details of that situation with the community >> (or are the specifics you provided all that's really relevant)? Asking to >> better understand if there is some legitimate criticism of what Maven lets >> you do, or if it's something we can make better in Calcite itself. > > This particular case was a consultant for my company for whom I was building > a custom version of Calcite. The consultant is technical and uses git all the > time, has a JVM installed on his machine (mainly for JRuby), but does not do > Java development, therefore does not have maven. > > Since his machine is macOS it was straightforward to do “brew install maven”. > (Which took about 20 minutes, because he first had to upgrade home-brew.) > > Clearly it was not that hard for him to install maven, but if we used mvnw we > could remove even that friction. > >> As long as we don't create a schism where some things can only be done by >> mvnw, I'm OK with this change. > > I promise that won’t happen. > > I believe that if you have mvn installed, mvnw will use it. Therefore most > developers will continue to use the same path, regardless of whether they > type “mvn” or “./mvnw”. I will continue to type “mvn”. > > Julan