If you are upgrading from Maven 1 to Maven 2, you are going to be
using an entirely new POM and repository structure. If you have already
created a custom Maven 1 repository to hold custom artifacts, you can
use the Nexus Repository Manager to expose a Maven 1 repository in a
format that can be understood by Maven 2 clients. For more information
about the Nexus Repository Manager, see Chapter 16, Repository Management with Nexus. In addition to tools like Nexus, you
can also configure references to repositories to use the
legacy layout format. For more information about
configuring a reference to a legacy repository, see Section A.2.8, “Repositories”.
If you have a set of Maven 1 projects, you may want to know about
the Maven One Plugin. The Maven One Plugin was designed to help projects
migrate from Maven 1 to Maven 2. If you have a Maven 1 project, you can
convert the project's POM by running the one:convert
goal as follows:
$ cd my-project $ mvn one:convert
one:convert will read a
project.xml and produce a
pom.xml that is compatible with Maven 2. If you've
customized a Maven 1 build using Jelly script in a
maven.xml file, you will need to investigate other
options. While Maven 1 emphasized Jelly scripting for customizing
builds, Maven 2 favors custom plugins or customization through scripting
Plugins or the Maven Antrun Plugin.
The most important thing to know about when upgrading from Maven 1 to Maven 2 is that Maven 2 is a completely different build framework. Maven 2 introduces the concept of the Maven Lifecycle and redefines the relationships between plugins. If you upgrade from Maven 1 to Maven 2, you need to invest some time in learning about the differences between the two versions. Although it might seem straightforward to start learning about the new POM structure, you should focus on the Lifecycle first. If you understand the Maven Lifecycle, you will be able to use Maven to its fullest potential.

