After finishing up a couple of recent tasks, I came to the realisation that Maven2 has reached the “hump” that you have to live with when writing in revolution mode instead of evolution.
I think it is now possible to do everything you could do in Maven 1.0 in Maven 2, as far as the core is concerned (and of course, a whole lot more!)
The main change that triggered this for me was the finalisation of the build lifecycle. While we’ve been adding a lot of new features, this one was important to facilitate some use cases in Maven1 that were previously unavailable to Maven2 plugin writers.
This is a good milestone to hit, as the external API for plugin writers has now stabilised and some additional efforts can be put in there to rewrite the popular Maven1 plugins and reports to leverage the improvements of Maven2, so that users can see the same benefits.
The Maven 2.0 alpha-3 release is due out on Wednesday, including those changes and more.
In addition, the dependency management has started to undergo its usability improvements and will shortly have the version ranges and conflict resolution that has been on the todo list so long. And of course, this will also be available automatically in the Ant tasks (which have already undergone a number of other improvements for this release as well) and the standalone Java code you can use yourself.
This is a big release as we are very close to being feature complete for the 2.0 core, and entering beta testing with the July release (that is, bugfixes, cosmetic improvements and above all documentation – avoiding API, usage and metadata changes).
So if you’ve been thinking of trying Maven2 out, watch out for the release this week. We’d love to hear what you think about it and it is the best time to get your feedback in for the 2.0 release cycle.