Hi guys, I know that's a hot topic, but I have to bring this discussion on the table.
Some months ago, we discussed about migrating our build from Maven to Gradle. One of the key expected improvement was the time to build. We proposed to do a PoC to evaluate the impacts and improvements, but this PoC was actually directly a migrate on master. Now, I would like to bring facts here: 1. Build time On my machine, the build time is roughly 1h15. It's pretty long, and regarding what the build is doing, I don't see huge improvement provided by Gradle. 2. Build reliability Even worse, most of the time, we need to use --no-parallel and --no-daemon to have a reliable build (it's basically recommended for release). It has an impact on build time, and we loose part of Gradle benefits. 3. Release and repositories Even if couple of releases has been performed with Gradle, it's not obvious to see improvements around artifacts handling. I got my repository polluted twice (that's part of the trick Gradle is doing to speed up the build dealing around the repository). 4. IDE integration We already had some comments on the mailing lists about the IDE integration. Clearly, the situation is not good on that front too. The integration on IDE (especially IntelliJ) is not good enough right now. We are working hard to grow up the community, and from a contributor perspective, our build system is not good today IMHO. As a contributor, I resumed my work on some PRs, and I'm spending so much time of the build, largely more than working on the PRs code itself. So, obviously, the situation is not perfect, at least from a contributor perspective. The purpose of this thread is not again to have a bunch of replied ending nowhere. I would like to be more "pushy" and let's try to be concrete. So basically, we only have two options: 1. Improve the build, working hard on Gradle front. Not sure if it makes such sense from a contributor perspective, as Maven is really well known from most of contributors (and easier to start with IMHO). 2. Back on Maven. That's clearly my preferred approach. IDE integration is better, Maven is well known from the contributors as already said. The effort is not so huge. We tried to use Gradle, we don't have the expected results now, that's not a problem, it's part of a project lifetime. Thoughts ? Regards JB -- Jean-Baptiste Onofré [email protected] http://blog.nanthrax.net Talend - http://www.talend.com
