-
Notifications
You must be signed in to change notification settings - Fork 426
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Pick a build automation system #62
Comments
I would recommend Gradle. It seems that more and more projects are moving towards it - most notably Android. |
@gstojsic, @JamieMagee - totally understood. We just uploaded Gradle build scripts in the 6.1.1 release. I'm hoping to send a pulse survey out to folks to get an understanding of which they'd like to see default. Hope you guys are both able to respond when I send it. |
@JamieMagee , @gstojsic : We decided to move away from ant. Further we will choose one from maven or gradle. |
Great news. The sooner you decide the better. |
Thanks for the update. I'll echo my comment from above that I believe Gradle is the best option, but either will be better than Ant. |
Linking #155 Right now we found gradle do not support optional dependencies. Do we have any workaround with Gradle & Optional dependencies ? |
The current workarounds are either:
Both workarounds are summed up nicely in this Stack Overflow post |
Maven is wordier than Gradle, but faster and ultimately slightly more capable (e.g., optional dependencies). Speaking as a Java library maintainer, I've had a much easier time managing releases with Gradle than with Maven. |
@benjamin-bader, thanks for your input. In one of our previous surveys, we asked "What is your build system of choice?". 73% of responses said Maven was their build system of choice. (ref: https://github.com/Microsoft/mssql-jdbc/wiki/JDBC-Survey-Results). Based on this data, we are going to stick with Maven only. We'll keep our existing Gradle build script on the repo, but will not be making any new updates to it. I know many of you use Gradle as your main build system, but we'd appreciate any help keeping this build script up to date. |
A short survey (by no means statistically valid) of the top java projects on github, such as guava, mockito, junit, hadoop, etc. shows that these projects use one, or in rarer cases two build automation systems. Currently in the dev branch there are config files for three: maven, gradle and ant. I believe this will be very hard to maintain so one build system should be picked and the others removed.
The text was updated successfully, but these errors were encountered: