Maven 3.0 Is Here!
Jason van Zyl blogs on the future of Maven Shell, Tycho, Polyglot Maven, and Hudson.
Maven 3.0 is here!
This release features a Maven API for component configuration, updated default plugin versions and an extended core artifact filter. The full list of changes and bug fixes is available at the Release Notes.
Maven 3 targets backwards compatibility with Maven 2, in addition to allowing safe embedding and improving usability and performance. However, there are some issues with Maven 2 compatibility, which are discussed in detail at the Maven 3.x Compatibility Notes document. Some incompatibility issues revolve around Maven 3’s removal of support for profiles outside of the POM or the settings.xml, and the removal of reporting related code from the core of Maven 3.
Please note that if you wish to try the new parallel build feature, the Maven team advise reading the ‘Guide on Parallel Builds‘ documentation. Parallel build analyses a project’s dependency graph and schedules modules that can be built in parallel, according to said dependency graph. This is an experimental feature – but Maven 3 comes with a “more experimental mode,” called ‘Weave’ which builds the reactor phase-by-phase in dependency order. This is instead of completing the full modules before moving onto the next. Information on Weave is also available at the ‘Guide to Parallel Builds‘ document.
Please note that the Maven 3 core release is made independently of related Maven plugins. A list of available plugins is available from the Maven website.
According to Jason van Zyl’s blog post, now the Maven 3 release is out the door, the team will focus on the Maven Shell, Polyglot Maven, and Hudson projects. Specifically, the Maven team will work to get Tycho fully setup for the Eclipse parallel IP process, and will move M2Eclipse to the Eclipse Foundation and bring the core to a 1.0 state. Jason van Zyl is aiming for M2Eclipse to join the Eclipse release train, making Indigo the first Eclipse distribution to ship with Maven capabilities. He also pledges a release of the Maven Shell “fairly soon” and a “new phase of work” on Polyglot Maven.