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. - +