diff --git a/maven-site/src/site/apt/guides/mini/guide-ibiblio-upload.apt b/maven-site/src/site/apt/guides/mini/guide-ibiblio-upload.apt
index 0e455ebfec..55a82f3dbe 100644
--- a/maven-site/src/site/apt/guides/mini/guide-ibiblio-upload.apt
+++ b/maven-site/src/site/apt/guides/mini/guide-ibiblio-upload.apt
@@ -85,7 +85,9 @@ foo-1.0.jar (or whatever artifact is referred to in the pom.xml)
* a url where the project can be found.
- * if you are one of its developers, a url where your name or email can be found inside the project site.
+ * if you are one of its developers, a url where your name or email can be found inside the project site.
+
+ []
This will speed up the uploading process.
diff --git a/maven-site/src/site/apt/guides/mini/guide-m1-m2.apt b/maven-site/src/site/apt/guides/mini/guide-m1-m2.apt
index 8bbe5ef6c7..8d7594d0cc 100644
--- a/maven-site/src/site/apt/guides/mini/guide-m1-m2.apt
+++ b/maven-site/src/site/apt/guides/mini/guide-m1-m2.apt
@@ -1,25 +1,175 @@
- ------
+ -----
Guide to Moving From Maven 1.x to Maven 2.x
- ------
- Jason van Zyl
- ------
+ ---
+ Jay H. Hartley
+ -----
12 October 2005
- ------
+ -----
-~~ merge in the m1 FAQ
-~~ repoclean
+Guide to Moving from Maven 1.x to Maven 2.x
- ** Projects using multiproject or project properties
+ This document is intended to be continously updated from the mail list archives.
+ For an only slightly out-of-date reference with concrete examples,
+ check out Vincent Massol's
+ {{{http://blogs.codehaus.org/people/vmassol/archives/001170_javazone_2005.html}JavaZone2005 presentation}}.
- Maven 1.x POMs that use multiproject and/or project.properties must be deployed by version 1.5 or later of the
- Artifact plugin for repoclean to successfully convert them. This ensures that any parent POMs and/or POM
- properties are fully resolved by Maven before deploying the POM.
+* Parallel Builds
- * planned tools
+ It is possible to establish parallel Maven builds, one using the old M1 settings,
+ and a second using M2. The Maven 2 configuration file names and uses have been modified,
+ so the two builds should not conflict.
+
+ A Maven 1.x build is configured with the following files:
+
+ * [project.xml] Project Object Model (POM) definition
+
+ * [maven.xml] Custom build scripts
+
+ * [project.properties] general build settings
+
+ * [build.properties] local build settings
- No there isn't something yet but it's planned. I have presented some slides at javaZone 2005 about "From m1 to m2".
- Maybe that could help you in the meantime:
+ A Maven 2 build is configured with a different file set:
+
+ * [pom.xml] POM definition
+
+ * [settings.xml] local configuration
+
+* Migrating the POM
- http://blogs.codehaus.org/people/vmassol/archives/001170_javazone_2005.html
+ The Project Object Model (POM) has moved from the project.xml file to pom.xml.
+ The XML schema has also changed, from {{{http://maven.apache.org/maven-v3_0_0.xsd}Version 3}} to
+ {{{http://maven.apache.org/maven-v4_0_0.xsd}Version 4}}.
-~~ doco coming from jay hartley
+ The new POM is nominally a superset of the old, so the first step in creating a
+ pom.xml is to copy over project.xml. Then start tweaking.
+ There are several new elements that can be added to a POM, but all are optional so
+ should not cause a problem with an initial build.
+
+ project.xml:
+
++----+
+
+
+ 3
+ util
+ Generic utility code
+ project
+ 1.1
+ org.apache.project.util
+
+ ...
+
+
+ ...
+
+ ...
+
+
++----+
+
+ pom.xml:
+
++----+
+
+
+ 4.0.0
+ util
+ Generic Utility Code
+ org.apache.project.util
+ 1.1
+ jar
+
+ ...
+
+
+ ...
+
+ ...
+
+
++----+
+
+ For more details, check out the
+ {{{http://maven.apache.org/maven2/guides/introduction/introduction-to-the-pom.html}POM Guide}}.
+
+* build.properties and project.properties
+
+ These files have been replaced with
+ {{{http://maven.apache.org/maven2/maven-settings/settings.html}settings.xml}}.
+ Like with the POM, you can establish a parallel build environment, so the m1 build
+ never breaks while the m2 build is being debugged.
+
+ Additional local build customization options can also be created using
+ {{{http://maven.apache.org/maven2/guides/introduction/introduction-to-profiles.html}profiles}}.
+
+* What to do with maven.xml?
+
+ See {{http://maven.apache.org/maven2/maven1.html#m1-maven-xml}} for an explanation of
+ why maven.xml was discarded, and
+ {{http://maven.apache.org/maven2/guides/introduction/introduction-to-plugins.html}} for
+ a guide to writing your own plug-ins.
+
+* Directory Structure
+
+ The POM allows customization of the directory structure in both Maven 1 and Maven 2
+ using the <<<\>>> tag. For simplicity, it would be ideal to move source to the
+ {{{http://maven.apache.org/maven2/guides/introduction/introduction-to-the-standard-directory-layout.html}Maven 2 default structure}},
+ but it is not required. You can begin by customizing the
+ directories in Maven 2, then when satisfied that both build paths are working, move
+ to the Maven 2 structure and customize the settings in Maven 1.
+
+* Migrating Plug-ins
+
+ The main conceptual change in plugins and their use has to do with the concept of
+ a build cycle in Maven 2. Instead of using <<>> and <<>> tags
+ in <<>> to tie plugin goals into the build process, the goals of a
+ plugin are associated with the pre-defined stages of the build cycle. See the
+ {{{http://maven.apache.org/maven2/guides/introduction/introduction-to-the-lifecycle.html}Introduction to the Build Lifecycle}}
+ for more on how plugins relate.
+
+** Re-use Ant Tasks
+
+ See the {{{http://maven.apache.org/maven2/general.html#using-ant-tasks}Ant Script FAQ}}.
+
+** Replace scripts with Mojos
+
+ The new plugin architecture does not specify a specific language implementation, so
+ Jelly scripts and other such artifacts should be re-usable with wrappers. It is recommended
+ that you look into moving to
+ {{{http://maven.apache.org/maven2/guides/plugin/guide-java-plugin-development.html}Mojos}}.
+
+** Utilize built-in Maven 2 capabilities
+
+*** Resource filtering to inject POM variables into application
+
+ You can turn on {{{http://maven.apache.org/maven2/guides/getting-started/index.html#How do I filter resource files?}resource filtering}}
+ in your POM. Tokens of the form <<<$\{pom.variable\}>>> in resource files will be replaced with the corresponding POM property.
+
++----+
+
+
+ ...
+
+
+
+ src/main/resources
+ true
+
+
+
+
+
++----+
+
+*** Multiproject Builds
+
+ The old reactor+multiproject plugin combination was established more as an afterthought
+ of the core development. In Maven 2, multiproject support is included in the core, so
+ any scripts required in the past to work around problems with the multiproject plugin
+ should be unnecessary.
+
+* Migrating repositories
+
+ Every four hours the Maven 1.x repository is converted over to a Maven 2.x repository and we plan to release
+ a plug-in based on our conversion tool but currently
\ No newline at end of file