Maven 3.0-beta-2

The Apache Maven team would like to announce the release of Maven 3.0-beta-2.

Maven 3.0-beta-2 is available for download from the 'preview' section.

Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central place.

Maven 3 aims to ensure backward compatibility with Maven 2, improve usability, increase performance, allow safe embedding, and pave the way to implement many highly demanded features.

The core release is independent of the plugins available. Further releases of plugins will be made separately. See the Plugin List for more information.

We hope you enjoy using Maven! If you have any questions, please consult:

Maven 3.0-beta-2 Release Notes

Maven 3 aims to ensure backward compatibility, improve usability, increase performance, allow safe embedding, and pave the way to implement many highly demanded features.

Users that intent to use the new parallel build feature are strongly advised to read the Guide on Parallel Builds to learn about potential ramifications.

The full list of changes can be found in our issue management system, and is reproduced below.

Known Incompatibilities with Maven 2

Please refer to the following compatibility notes.

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

Bug

  • [MNG-1803] - Provide line number information when there are errors processing a pom.xml
  • [MNG-4615] - [regression] @required plugin parameters are not validated
  • [MNG-4643] - [regression] Transitive dependency not available due to dependency POM erroneously rejected as invalid
  • [MNG-4648] - NullPointerException thrown from DefaultPluginRealmCache#pluginHashCode method if project-level plugin dependency misses version
  • [MNG-4651] - Site 3.x plugin broken due to api change
  • [MNG-4666] - [regression] Plugins depending on plexus:plexus-container-default get broken runtime classpath
  • [MNG-4677] - [regression] Plugin configuration incorrectly inherited from parent pom
  • [MNG-4678] - CLI: AbstractConsoleDownloadMonitor, BatchModeDownloadMonitor output download progress to STDOUT
  • [MNG-4679] - [regression] command line option "-update-snapshots" does not work for dependency:copy-dependencies
  • [MNG-4682] - Exception upon build failure in parallel builds
  • [MNG-4684] - distributionManagment section in profiles do not override default one (maven 3 regression)
  • [MNG-4695] - Missing Error during pom validation: "You cannot have two plugin executions with the same (or missing) id/ elements."
  • [MNG-4696] - [regression] MavenProject.getDependencyArtifacts() misses elements
  • [MNG-4717] - Repository Ids containing ":" will lead to checksum errors on Windows machines
  • [MNG-4718] - [regression] Missing Class in 3.0-beta-1: org.apache.maven.project.artifact.AttachedArtifact
  • [MNG-4729] - Mirrors and servers not accessed properly by plugin on a build
  • [MNG-4738] - DefaultArtifactResolver forks non-daemon threads
  • [MNG-4740] - Maven hangs with big aggregators with lots of inter-modules dependencies
  • [MNG-4747] - Javaagent not usable since 3.0-alpha
  • [MNG-4750] - [regression] MavenProject.getDependencyArtifacts() aren't resolved

Improvement

  • [MNG-4642] - Mojos need some way to indicate support of multithreading
  • [MNG-4693] - add a dependency graph with image map to navigate easily to modules
  • [MNG-4732] - Version string validation
  • [MNG-4744] - Validate coordinates of dependency exclusions

Task

  • [MNG-4658] - Relax validation of repository ids and only warn upon conflict with "local"
  • [MNG-4664] - Minor patches needed to run Maven3 with the replacement Guice-Plexus container
  • [MNG-4697] - Deprecate ununsed CLI options for plugin registry
  • [MNG-4725] - Extend core artifact filter to exclude Guice-based Plexus shim