Gradle when you want to
May 14, 2019

Gradle when you want to

David Tanner | TrustRadius Reviewer
Score 4 out of 10
Vetted Review
Verified User

Overall Satisfaction with Gradle

Gradle is being used to build the server service. We use it to compile Java, run tests, and some of the deployment work. The backend team uses the service, as well as the integration test project. Gradle allows us to share the build process between developers and the various build machines.
  • It allows us to share configurations between machines and developers
  • It makes builds reproducible
  • It allows us to tweak how our server gets bundled and deployed
  • Still under development, not as mature as Maven
  • Build files aren't as easy to follow because they are so loose
  • The community isn't as large as Maven
  • Gradle has been a roadblock lately to our move to another hosting service
  • Developers can't get started on a project with the latest tools, leading to delays in change efforts
  • Gradle builds can be fast, once up and running, allowing for faster development turnaround
Maven is a much more mature build tool. The community behind maven plugins has continued to grow over time, and there are several mature products that continue to receive support. Gradle can use some of these features, but appears to be losing steam over time. The effort to build a maven project can be a little more up front than Gradle, but overall it provides a much better experience.
I have tried to use Gradle for projects several times in the past, but there is just so much work in maintaining the build file that it quickly becomes untenable. I have been using Maven for many years, and even though the build file can be complex, it works without maintenance between releases.
Gradle seems to be the new kid on the block, and provides better support for parallel tasks. Getting started can be very easy, but projects quickly need more control, or customization which Gradle has a hard time providing. The rapid changes to the tool also make it difficult for organizations that aren't actively developing in Gradle, and so the tool might be better suited to companies willing to spend the time on the build configuration.