Friday, October 8, 2010

Apache Maven 3.0 Released [New Version Announcement]

The Maven team is pleased to announce the release of Apache Maven 3.0.

Maven is a project comprehension and build tool, designed to simplify
the process of maintaining a healthy development lifecycle for your
project. You can read more here:

http://maven.apache.org/

Downloads of source and binary distributions are listed in our download
section:

http://maven.apache.org/download.html

A major goal of Maven 3.0 is to be compatible, to the extent possible,
with existing plugins and projects designed for Maven 2.x. Users
interested in upgrading to this new major release should have a glance
at the compatibility notes for known differences between Maven 3.0 and
Maven 2.x:

http://cwiki.apache.org/MAVEN/maven-3x-compatibility-notes.html

If you encounter unexpected problems while using Maven 3.0, please feel
free to contact us via the Maven developer list:

http://maven.apache.org/mail-lists.html

Last but not least, the Maven team would like to thank all the users
that tested the various alphas/betas/RCs and provided valuable feedback
that helped us to eventually release a solid Maven 3.0!

Release Notes - Maven 2 & 3 - Version 3.0 (since 3.0-beta-3 only)

** Bug
* [MNG-4592] - Snapshot artifacts that could not be downloaded due
to communication problems are "blacklisted" for a day by default.
* [MNG-4751] - Snapshot version not resolved for version range
* [MNG-4785] - NPE in dependency resolution code for TC plugin
* [MNG-4786] - [regression] Ant-based mojo using
maven-script-ant:2.1.0+ cause NPE
* [MNG-4788] - [regression] Appassembler Maven Plugin doesn't work
like as it should
* [MNG-4789] - [regression] Difference in compile scope dependency
resolution
* [MNG-4791] - [regression] POM artifacts passed into
MavenProjectBuilder.buildFromRepository() are no longer resolved
* [MNG-4793] - Unable to obtain archiver for extension 'zip'
* [MNG-4794] -
'org.apache.maven.plugins:maven-install-plugin:2.3.1'. A required class
is missing: org.codehaus.plexus.digest.Digester
* [MNG-4795] - [regression] Dependencies in forked reactor projects
are not resolved when aggregator bound to lifecycle forks
* [MNG-4800] - Conflict resolution does not pick sub tree of
nearest dependency if farther conflicting dependency has wider scope
* [MNG-4810] - Maven cannot build if loaded in a classloader that
is not backed by a real JAR file / classpath
* [MNG-4811] - Custom Maven Plugin regression in Maven 3.x, custom
ComponentConfigurator causes infinite loop
* [MNG-4814] - Eary dependency resolution attempts for reactor
projects prevent their later resolution from the reactor
* [MNG-4818] - NPE in legacy.DefaultWagonManager.getArtifact
* [MNG-4829] - [regression] Checksum failures aren't logged
* [MNG-4832] - Maven 3 Regression: Missing constructor of
org.codehaus.plexus.component.configurator.converters.special.ClassRealmConverter
* [MNG-4834] - [regression] MavenProject.getParent() ignores
configured repositories
* [MNG-4836] - Incorrect recursive expression cycle errors (update
plexus-interpolation)
* [MNG-4837] - Interpolation error due to cyclic expression for one
of the POM coordinates gets needlessly repeated
* [MNG-4842] - [regression] Repositories discovered in dependency
POMs override repositories configured for original resolution request of POM
* [MNG-4845] - [regression] MavenProject.getDependencyArtifact()
returns artifacts without version for dependency with version range

** Improvement
* [MNG-4452] - Metadata for snapshots should include classifier
* [MNG-4787] - Allow class realm manager delegates to alter public
part of Maven core realm
* [MNG-4815] - (3.0-RC1) Maven Java API does not give nice error
messages when improperly configured
* [MNG-4824] - multiple failures need additional whitespace
* [MNG-4825] - Relative path errors could be more explicit

** New Feature
* [MNG-4484] - Create a Maven API for component configuration

** Task
* [MNG-4805] - Update default plugin versions used for built-in
lifecycle mappings
* [MNG-4807] - Extend core artifact filter to exclude relocated
Guice-based Plexus shim

** Wish
* [MNG-4796] - add a warning when profiles.xml is used (Maven 2) or
detected (Maven 3)

Enjoy,


-The Maven team