diff --git a/api/maven-api-core/pom.xml b/api/maven-api-core/pom.xml
index 8920507f51d6..1ba9fb04ba4e 100644
--- a/api/maven-api-core/pom.xml
+++ b/api/maven-api-core/pom.xml
@@ -27,7 +27,8 @@
maven-api-core
- Apache Maven Core API
+ Maven 4 API :: Core
+ Maven 4 API - Maven Core APIs.
diff --git a/api/maven-api-core/src/site/site.xml b/api/maven-api-core/src/site/site.xml
new file mode 100644
index 000000000000..8ffe43d07c30
--- /dev/null
+++ b/api/maven-api-core/src/site/site.xml
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+ ${project.scm.url}
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/api/maven-api-meta/pom.xml b/api/maven-api-meta/pom.xml
index 65d31dc6b6e7..54b602fd359c 100644
--- a/api/maven-api-meta/pom.xml
+++ b/api/maven-api-meta/pom.xml
@@ -27,6 +27,7 @@
maven-api-meta
- Maven API Meta annotations
+ Maven 4 API Meta annotations
+ Java annotations for Maven 4 Immutable API.
diff --git a/api/maven-api-meta/src/site/site.xml b/api/maven-api-meta/src/site/site.xml
new file mode 100644
index 000000000000..8ffe43d07c30
--- /dev/null
+++ b/api/maven-api-meta/src/site/site.xml
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+ ${project.scm.url}
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/api/maven-api-model/pom.xml b/api/maven-api-model/pom.xml
index 34add96298c5..e141aac08bee 100644
--- a/api/maven-api-model/pom.xml
+++ b/api/maven-api-model/pom.xml
@@ -28,8 +28,8 @@ under the License.
maven-api-model
- Maven API Model
- Maven API Model for Maven POM (Project Object Model)
+ Maven 4 API :: Model
+ Maven 4 API - Immutable Model for Maven POM (Project Object Model)
diff --git a/api/maven-api-model/src/main/java/org/apache/maven/api/model/package-info.java b/api/maven-api-model/src/main/java/org/apache/maven/api/model/package-info.java
index 854562874e7d..3c1c61e2130b 100644
--- a/api/maven-api-model/src/main/java/org/apache/maven/api/model/package-info.java
+++ b/api/maven-api-model/src/main/java/org/apache/maven/api/model/package-info.java
@@ -1,6 +1,6 @@
// CHECKSTYLE_OFF: RegexpHeader
/**
- * Maven POM (Project Object Model) classes, generated from maven.mdo model.
+ * Maven Immutable POM (Project Object Model) classes, generated from maven.mdo model.
* The root class is {@link org.apache.maven.api.model.Model}.
*/
package org.apache.maven.api.model;
diff --git a/api/maven-api-model/src/main/mdo/common.vm b/api/maven-api-model/src/main/mdo/common.vm
index 3c3f29cf7a27..e300b2289fea 100644
--- a/api/maven-api-model/src/main/mdo/common.vm
+++ b/api/maven-api-model/src/main/mdo/common.vm
@@ -20,7 +20,7 @@
##
## The following loop code is required in order to change the type of the
## pomFile attribute to a java.nio.file.Path. Modello does not support this
-## type and loading a model with such a type would fail the modello validation.
+## type and loading a model with such a type would fail the Modello validation.
##
#foreach ( $field in $model.getClass("Model", $version).allFields )
#if ( $field.name == "pomFile" )
diff --git a/api/maven-api-model/src/site/apt/index.apt b/api/maven-api-model/src/site/apt/index.apt
new file mode 100644
index 000000000000..e64b4fb211a9
--- /dev/null
+++ b/api/maven-api-model/src/site/apt/index.apt
@@ -0,0 +1,36 @@
+~~ Licensed to the Apache Software Foundation (ASF) under one
+~~ or more contributor license agreements. See the NOTICE file
+~~ distributed with this work for additional information
+~~ regarding copyright ownership. The ASF licenses this file
+~~ to you under the Apache License, Version 2.0 (the
+~~ "License"); you may not use this file except in compliance
+~~ with the License. You may obtain a copy of the License at
+~~
+~~ http://www.apache.org/licenses/LICENSE-2.0
+~~
+~~ Unless required by applicable law or agreed to in writing,
+~~ software distributed under the License is distributed on an
+~~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+~~ KIND, either express or implied. See the License for the
+~~ specific language governing permissions and limitations
+~~ under the License.
+
+ -----
+ Introduction
+ -----
+ Jason van Zyl
+ Vincent Siveton
+ Hervé Boutemy
+ -----
+ 2011-06-12
+ -----
+
+Maven 4 API - Immutable Maven Model
+
+ This is strictly the immutable model for Maven POM (Project Object Model), so really just plain objects in <<>> package.
+
+ The following are generated from this model:
+
+ * {{{./apidocs/index.html}Java sources}} with <<>> inner classes for immutable instances creation.
+
+ See also corresponding {{{../../maven-model/index.html}Maven classical POM model documentation}}.
diff --git a/api/maven-api-model/src/site/site.xml b/api/maven-api-model/src/site/site.xml
new file mode 100644
index 000000000000..8ffe43d07c30
--- /dev/null
+++ b/api/maven-api-model/src/site/site.xml
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+ ${project.scm.url}
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/api/maven-api-settings/pom.xml b/api/maven-api-settings/pom.xml
index 5f1b0f02ef4a..843274f0edee 100644
--- a/api/maven-api-settings/pom.xml
+++ b/api/maven-api-settings/pom.xml
@@ -28,8 +28,8 @@ under the License.
maven-api-settings
- Maven API Settings
- Maven API Settings model.
+ Maven 4 API :: Settings
+ Maven 4 API - Immutable Settings model
diff --git a/api/maven-api-settings/src/site/apt/index.apt b/api/maven-api-settings/src/site/apt/index.apt
index 2b42ccd16a36..ca71c0d7f736 100644
--- a/api/maven-api-settings/src/site/apt/index.apt
+++ b/api/maven-api-settings/src/site/apt/index.apt
@@ -23,14 +23,13 @@
2006-11-04
-----
-Maven Settings Model
+Maven 4 API - Immutable Settings Model
- This is strictly the model for Maven settings.
+ This is strictly the immutable model for Maven settings in <<>> package.
The following are generated from this model:
- * {{{./apidocs/index.html}Java sources}} with Reader and Writers for the Xpp3 XML parser
+ * {{{./apidocs/index.html}Java sources}} with <<>> inner classes for immutable instances creation.
- * A {{{./settings.html}Descriptor Reference}}
-
- * An {{{https://maven.apache.org/xsd/settings-1.2.0.xsd}XSD}}
+ See also corresponding {{{../../maven-settings/index.html}Maven classical settings model documentation}}.
+
\ No newline at end of file
diff --git a/api/maven-api-settings/src/site/site.xml b/api/maven-api-settings/src/site/site.xml
index e475330c4063..8ffe43d07c30 100644
--- a/api/maven-api-settings/src/site/site.xml
+++ b/api/maven-api-settings/src/site/site.xml
@@ -27,7 +27,7 @@ under the License.
diff --git a/api/maven-api-toolchain/pom.xml b/api/maven-api-toolchain/pom.xml
index bb0cb54b31a3..20024cb8a43b 100644
--- a/api/maven-api-toolchain/pom.xml
+++ b/api/maven-api-toolchain/pom.xml
@@ -27,8 +27,8 @@ under the License.
maven-api-toolchain
- Maven API Toolchain
- Maven API Toolchain model.
+ Maven 4 API :: Toolchain
+ Maven 4 API - Immutable Toolchain model.
diff --git a/api/maven-api-toolchain/src/site/apt/index.apt b/api/maven-api-toolchain/src/site/apt/index.apt
new file mode 100644
index 000000000000..689b0443307e
--- /dev/null
+++ b/api/maven-api-toolchain/src/site/apt/index.apt
@@ -0,0 +1,35 @@
+~~ Licensed to the Apache Software Foundation (ASF) under one
+~~ or more contributor license agreements. See the NOTICE file
+~~ distributed with this work for additional information
+~~ regarding copyright ownership. The ASF licenses this file
+~~ to you under the Apache License, Version 2.0 (the
+~~ "License"); you may not use this file except in compliance
+~~ with the License. You may obtain a copy of the License at
+~~
+~~ http://www.apache.org/licenses/LICENSE-2.0
+~~
+~~ Unless required by applicable law or agreed to in writing,
+~~ software distributed under the License is distributed on an
+~~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+~~ KIND, either express or implied. See the License for the
+~~ specific language governing permissions and limitations
+~~ under the License.
+
+ -----
+ Introduction
+ -----
+ Vincent Siveton
+ -----
+ 2006-11-04
+ -----
+
+Maven 4 API - Immutable Toolchains Model
+
+ This is strictly the immutable model for Maven toolchains in <<>> package.
+
+ The following are generated from this model:
+
+ * {{{./apidocs/index.html}Java sources}} with <<>> inner classes for immutable instances creation.
+
+ See also corresponding {{{../../maven-toolchain-model/index.html}Maven classical toolchains model documentation}}.
+
\ No newline at end of file
diff --git a/api/maven-api-toolchain/src/site/site.xml b/api/maven-api-toolchain/src/site/site.xml
new file mode 100644
index 000000000000..8ffe43d07c30
--- /dev/null
+++ b/api/maven-api-toolchain/src/site/site.xml
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+ ${project.scm.url}
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/api/maven-api-xml/pom.xml b/api/maven-api-xml/pom.xml
index 3a8d0e6ad01b..0b0adb0d3266 100644
--- a/api/maven-api-xml/pom.xml
+++ b/api/maven-api-xml/pom.xml
@@ -27,7 +27,8 @@
maven-api-xml
- Maven API XML
+ Maven 4 API XML
+ Maven 4 API immutable XML helper.
diff --git a/api/maven-api-xml/src/site/site.xml b/api/maven-api-xml/src/site/site.xml
new file mode 100644
index 000000000000..8ffe43d07c30
--- /dev/null
+++ b/api/maven-api-xml/src/site/site.xml
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+ ${project.scm.url}
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/api/modello-plugin-velocity/src/site/site.xml b/api/modello-plugin-velocity/src/site/site.xml
new file mode 100644
index 000000000000..8ffe43d07c30
--- /dev/null
+++ b/api/modello-plugin-velocity/src/site/site.xml
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+ ${project.scm.url}
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/api/pom.xml b/api/pom.xml
index 3de8ccbc9b62..d425fee166d0 100644
--- a/api/pom.xml
+++ b/api/pom.xml
@@ -28,7 +28,8 @@
maven-api
pom
- Maven API
+ Maven 4 API
+ A new immutable API for Maven 4 to better manage what plugins and extensions can influence.
modello-plugin-velocity
@@ -40,4 +41,53 @@
maven-api-core
+
+ api
+
+
+
+
+ reporting
+
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+
+
+
+ provisional
+ tf
+ Provisional:
+
+
+
+
+
+ aggregate
+
+ aggregate
+
+ false
+
+
+
+
+ org.apache.maven.plugins
+ maven-jxr-plugin
+
+
+ aggregate
+
+ aggregate
+
+ false
+
+
+
+
+
+
+
+
diff --git a/api/src/site/site.xml b/api/src/site/site.xml
new file mode 100644
index 000000000000..8ffe43d07c30
--- /dev/null
+++ b/api/src/site/site.xml
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+ ${project.scm.url}
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/maven-artifact/src/site/site.xml b/maven-artifact/src/site/site.xml
index e475330c4063..8ffe43d07c30 100644
--- a/maven-artifact/src/site/site.xml
+++ b/maven-artifact/src/site/site.xml
@@ -27,7 +27,7 @@ under the License.
diff --git a/maven-bom/src/site/site.xml b/maven-bom/src/site/site.xml
index 7f2adda9ab26..e6ace5735780 100644
--- a/maven-bom/src/site/site.xml
+++ b/maven-bom/src/site/site.xml
@@ -39,7 +39,7 @@ under the License.
diff --git a/maven-builder-support/src/site/site.xml b/maven-builder-support/src/site/site.xml
index e475330c4063..8ffe43d07c30 100644
--- a/maven-builder-support/src/site/site.xml
+++ b/maven-builder-support/src/site/site.xml
@@ -27,7 +27,7 @@ under the License.
diff --git a/maven-compat/src/site/site.xml b/maven-compat/src/site/site.xml
index e475330c4063..8ffe43d07c30 100644
--- a/maven-compat/src/site/site.xml
+++ b/maven-compat/src/site/site.xml
@@ -27,7 +27,7 @@ under the License.
diff --git a/maven-core/src/site/site.xml b/maven-core/src/site/site.xml
index ee0671d4c321..09663df667f1 100644
--- a/maven-core/src/site/site.xml
+++ b/maven-core/src/site/site.xml
@@ -27,7 +27,7 @@ under the License.
diff --git a/maven-embedder/src/site/site.xml b/maven-embedder/src/site/site.xml
index 908e741f8d52..c1bd4a7df213 100644
--- a/maven-embedder/src/site/site.xml
+++ b/maven-embedder/src/site/site.xml
@@ -27,7 +27,7 @@ under the License.
diff --git a/maven-model-builder/src/site/site.xml b/maven-model-builder/src/site/site.xml
index 7aaee5a6bc5f..61e47a68fe27 100644
--- a/maven-model-builder/src/site/site.xml
+++ b/maven-model-builder/src/site/site.xml
@@ -27,7 +27,7 @@ under the License.
diff --git a/maven-model-transform/src/site/site.xml b/maven-model-transform/src/site/site.xml
index e475330c4063..8ffe43d07c30 100644
--- a/maven-model-transform/src/site/site.xml
+++ b/maven-model-transform/src/site/site.xml
@@ -27,7 +27,7 @@ under the License.
diff --git a/maven-model/src/site/apt/index.apt b/maven-model/src/site/apt/index.apt
index 0010f4fb7556..f4fa8023665b 100644
--- a/maven-model/src/site/apt/index.apt
+++ b/maven-model/src/site/apt/index.apt
@@ -27,12 +27,14 @@
Maven Model
- This is strictly the model for Maven POM (Project Object Model), so really just plain objects. All the effective model
+ This is strictly the model for Maven POM (Project Object Model) in <<>> package,
+ delegating content to {{{../maven-api/maven-api-model/index.html}Maven 4 API immutable model}}. All the effective model
building logic from multiple POMs and building context is done in {{{../maven-model-builder/}Maven Model Builder}}.
The following are generated from this model:
- * {{{./apidocs/index.html}Java sources}} with Reader and Writers for the Xpp3 XML parser
+ * {{{./apidocs/index.html}Java sources}} with Reader and Writers for the Xpp3 XML parser, <<>> and <<>> transformers, and <<>> package
+ for Merger and v4 Reader and Writers for the Xpp3 XML parser,
* A {{{./maven.html}Descriptor Reference}}
diff --git a/maven-model/src/site/site.xml b/maven-model/src/site/site.xml
index e475330c4063..8ffe43d07c30 100644
--- a/maven-model/src/site/site.xml
+++ b/maven-model/src/site/site.xml
@@ -27,7 +27,7 @@ under the License.
diff --git a/maven-plugin-api/src/site/site.xml b/maven-plugin-api/src/site/site.xml
index 224f30ecf85a..519623c9e73c 100644
--- a/maven-plugin-api/src/site/site.xml
+++ b/maven-plugin-api/src/site/site.xml
@@ -27,7 +27,7 @@
diff --git a/maven-repository-metadata/src/site/site.xml b/maven-repository-metadata/src/site/site.xml
index c24e1433e7d9..be08a3317f30 100644
--- a/maven-repository-metadata/src/site/site.xml
+++ b/maven-repository-metadata/src/site/site.xml
@@ -27,7 +27,7 @@ under the License.
diff --git a/maven-resolver-provider/src/site/site.xml b/maven-resolver-provider/src/site/site.xml
index e475330c4063..8ffe43d07c30 100644
--- a/maven-resolver-provider/src/site/site.xml
+++ b/maven-resolver-provider/src/site/site.xml
@@ -27,7 +27,7 @@ under the License.
diff --git a/maven-settings-builder/src/site/site.xml b/maven-settings-builder/src/site/site.xml
index e475330c4063..8ffe43d07c30 100644
--- a/maven-settings-builder/src/site/site.xml
+++ b/maven-settings-builder/src/site/site.xml
@@ -27,7 +27,7 @@ under the License.
diff --git a/maven-settings/src/site/apt/index.apt b/maven-settings/src/site/apt/index.apt
index 2b42ccd16a36..bcedeedd2350 100644
--- a/maven-settings/src/site/apt/index.apt
+++ b/maven-settings/src/site/apt/index.apt
@@ -25,11 +25,14 @@
Maven Settings Model
- This is strictly the model for Maven settings.
+ This is the model for Maven settings in <<>> package,
+ delegating content to {{{../maven-api/maven-api-settings/index.html}Maven 4 API immutable settings}}. All the effective model
+ building logic from multiple settings files is done in {{{../maven-settings-builder/}Maven Settings Builder}}.
The following are generated from this model:
- * {{{./apidocs/index.html}Java sources}} with Reader and Writers for the Xpp3 XML parser
+ * {{{./apidocs/index.html}Java sources}} with Reader and Writers for the Xpp3 XML parser, <<>> and <<>> transformers, and <<>> package
+ for Merger and v4 Reader and Writers for the Xpp3 XML parser,
* A {{{./settings.html}Descriptor Reference}}
diff --git a/maven-settings/src/site/site.xml b/maven-settings/src/site/site.xml
index e475330c4063..8ffe43d07c30 100644
--- a/maven-settings/src/site/site.xml
+++ b/maven-settings/src/site/site.xml
@@ -27,7 +27,7 @@ under the License.
diff --git a/maven-slf4j-provider/src/site/site.xml b/maven-slf4j-provider/src/site/site.xml
index e475330c4063..8ffe43d07c30 100644
--- a/maven-slf4j-provider/src/site/site.xml
+++ b/maven-slf4j-provider/src/site/site.xml
@@ -27,7 +27,7 @@ under the License.
diff --git a/maven-slf4j-wrapper/src/site/site.xml b/maven-slf4j-wrapper/src/site/site.xml
index e475330c4063..8ffe43d07c30 100644
--- a/maven-slf4j-wrapper/src/site/site.xml
+++ b/maven-slf4j-wrapper/src/site/site.xml
@@ -27,7 +27,7 @@ under the License.
diff --git a/maven-toolchain-builder/src/site/site.xml b/maven-toolchain-builder/src/site/site.xml
new file mode 100644
index 000000000000..8ffe43d07c30
--- /dev/null
+++ b/maven-toolchain-builder/src/site/site.xml
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+ ${project.scm.url}
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/maven-toolchain-model/src/site/site.xml b/maven-toolchain-model/src/site/site.xml
new file mode 100644
index 000000000000..8ffe43d07c30
--- /dev/null
+++ b/maven-toolchain-model/src/site/site.xml
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+ ${project.scm.url}
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/maven-xml-impl/README.md b/maven-xml-impl/README.md
index b2a7ad5443b5..ed9ba4254ea8 100644
--- a/maven-xml-impl/README.md
+++ b/maven-xml-impl/README.md
@@ -20,4 +20,3 @@ Apache Maven XML Impl
This module contains the implementation of the `org.apache.maven.api.xml.Dom` interface used to convey XML snippets in the object model, and also the modified `org.codehaus.plexus.util.xml` package which wraps the immutable objects from `org.apache.maven.api.xml.Dom` in order to provide compatibility and interoperability between the API v3.x and v4.x.
See [plexus-utils](../plexus-utils/README.md) for more information.
-
diff --git a/maven-xml-impl/pom.xml b/maven-xml-impl/pom.xml
index db8b7a523e78..bf91fab2bbde 100644
--- a/maven-xml-impl/pom.xml
+++ b/maven-xml-impl/pom.xml
@@ -26,8 +26,8 @@ under the License.
maven-xml-impl
-
- Maven XML Implementation
+ Implementation of Maven API XML
+ To be merged into Maven plexus-utils
diff --git a/plexus-utils/README.md b/plexus-utils/README.md
index c23a3000abab..125c34a49a6b 100644
--- a/plexus-utils/README.md
+++ b/plexus-utils/README.md
@@ -17,10 +17,10 @@
Apache Maven Plexus Utils
=========================
-This module is a repackaging of the `org.codehaus.plexus:plexus-utils` jar, which contains a few modified classes to allow a seamless transition between the maven 3.x and 4.x apis.
+This module is a repackaging of the `org.codehaus.plexus:plexus-utils` jar, which contains a few modified classes to allow a seamless transition between the Maven 3.x and 4.x APIs.
-The maven 4.x api is based on immutable data objects. The maven model contains a few classes that contain some open xml data (`Plugin`, `PluginExecution`, `ReportPlugin` and `ReportSet`). So the v3 API which was using the `org.codehaus.plexus.utils.xml.Xpp3Dom` class now wraps the `org.apache.maven.api.Dom` node. This is completely transparent for existing plugins, but the correct (new) classes have to be used.
+The Maven 4.x API is based on immutable data objects. The Maven model contains a few classes that contain some open xml data for configuration (`Plugin`, `PluginExecution`, `ReportPlugin` and `ReportSet`). So the v3 API which was using the `org.codehaus.plexus.utils.xml.Xpp3Dom` class now wraps the `org.apache.maven.api.Dom` interface node. This is completely transparent for existing plugins, but the correct (new) classes have to be used.
-Given the new implementation of `org.codehaus.plexus.utils.xml.Xpp3Dom` now relies on `org.apache.maven.api.Dom`, the modifications can't be made inside the `plexus-utils` project, because maven itself depends on it.
+Given the new implementation of `org.codehaus.plexus.utils.xml.Xpp3Dom` now relies on `org.apache.maven.api.Dom`, the modifications can't be made inside the `plexus-utils` project, because Maven itself depends on it.
This is drop-in replacement for `plexus-utils` 3.4.2.
diff --git a/plexus-utils/pom.xml b/plexus-utils/pom.xml
index 6193526da3b5..b7d9515f7158 100644
--- a/plexus-utils/pom.xml
+++ b/plexus-utils/pom.xml
@@ -28,6 +28,8 @@ under the License.
org.apache.maven
plexus-utils
4.0.0-alpha-4-SNAPSHOT
+ Apache Maven Plexus-Utils
+ Apache Maven repackaging of Plexus Utils with immutable Dom interface and its replacement implementation.
@@ -51,7 +53,7 @@ under the License.
3.1.1
- unpack-sourcs
+ unpack-sources
unpack
diff --git a/src/site/site.xml b/src/site/site.xml
index 83da6d7d019f..3ba52bda596b 100644
--- a/src/site/site.xml
+++ b/src/site/site.xml
@@ -39,7 +39,7 @@ under the License.