From 71c662fa4c2623319127cb399d5f2ab9c13f1b39 Mon Sep 17 00:00:00 2001 From: Tamas Cservenak Date: Wed, 8 Jan 2025 23:14:18 +0100 Subject: [PATCH] [MNG-8473] Site fixes (#2010) Maven4 site cleanup: make all new modules generating models also document them, expose them all and redirect all links to new documentation. Lifecycle is the only thing missing, as it is generated on the fly, there is no more source to "point at"... --- https://issues.apache.org/jira/browse/MNG-8473 --- api/maven-api-cli/pom.xml | 2 + api/maven-api-metadata/pom.xml | 42 ++++------- api/maven-api-model/pom.xml | 33 +++++---- api/maven-api-plugin/pom.xml | 36 ++------- api/maven-api-settings/pom.xml | 43 ++++------- api/maven-api-toolchain/pom.xml | 35 +++++---- api/pom.xml | 21 ------ compat/maven-model/pom.xml | 14 ---- impl/maven-core/pom.xml | 25 ------- .../impl/DefaultLifecycleRegistry.java | 6 ++ .../maven-core/src/site/apt/lifecycles.apt.vm | 14 +--- .../src/site/apt/dependency-types.apt | 74 +++++++++++++++++++ pom.xml | 10 --- src/site/site.xml | 10 ++- 14 files changed, 167 insertions(+), 198 deletions(-) create mode 100644 impl/maven-impl/src/site/apt/dependency-types.apt diff --git a/api/maven-api-cli/pom.xml b/api/maven-api-cli/pom.xml index 00f2015a75..e9b0c620f5 100644 --- a/api/maven-api-cli/pom.xml +++ b/api/maven-api-cli/pom.xml @@ -65,8 +65,10 @@ modello velocity + xdoc xsd + generate-sources diff --git a/api/maven-api-metadata/pom.xml b/api/maven-api-metadata/pom.xml index c7886d5d9a..1932115753 100644 --- a/api/maven-api-metadata/pom.xml +++ b/api/maven-api-metadata/pom.xml @@ -42,40 +42,28 @@ under the License. org.codehaus.modello modello-maven-plugin + + ${project.basedir}/../../src/mdo + 1.2.0 + + src/main/mdo/metadata.mdo + + + + + + packageModelV4=org.apache.maven.api.metadata + + - plugin + modello velocity - - generate-sources - - ${project.basedir}/../../src/mdo - 1.2.0 - - src/main/mdo/metadata.mdo - - - - - - packageModelV4=org.apache.maven.api.metadata - - - - - plugin-doc - xdoc xsd - generate-resources - - 1.2.0 - - src/main/mdo/metadata.mdo - - + generate-sources diff --git a/api/maven-api-model/pom.xml b/api/maven-api-model/pom.xml index de1951415e..11023a08ab 100644 --- a/api/maven-api-model/pom.xml +++ b/api/maven-api-model/pom.xml @@ -47,26 +47,29 @@ under the License. org.codehaus.modello modello-maven-plugin + + 4.1.0 + ${project.basedir}/../../src/mdo + + src/main/mdo/maven.mdo + + + + + + packageModelV4=org.apache.maven.api.model + isMavenModel=true + + - velocity + modello velocity + xdoc + xsd - - 4.1.0 - ${project.basedir}/../../src/mdo - - src/main/mdo/maven.mdo - - - - - - packageModelV4=org.apache.maven.api.model - isMavenModel=true - - + generate-sources diff --git a/api/maven-api-plugin/pom.xml b/api/maven-api-plugin/pom.xml index c74e187bfa..b811cedee1 100644 --- a/api/maven-api-plugin/pom.xml +++ b/api/maven-api-plugin/pom.xml @@ -53,9 +53,11 @@ under the License. modello-maven-plugin - plugin + modello-plugin velocity + xdoc + xsd generate-sources @@ -73,23 +75,11 @@ under the License. - plugin-doc - - xdoc - xsd - - generate-resources - - 2.0.0 - - src/main/mdo/plugin.mdo - - - - - lifecycle + modello-lifecycle velocity + xdoc + xsd generate-sources @@ -106,20 +96,6 @@ under the License. - - lifecycle-doc - - xdoc - xsd - - generate-sources - - 1.0.0 - - src/main/mdo/lifecycle.mdo - - - diff --git a/api/maven-api-settings/pom.xml b/api/maven-api-settings/pom.xml index 4e8b6291f2..cb6298b425 100644 --- a/api/maven-api-settings/pom.xml +++ b/api/maven-api-settings/pom.xml @@ -53,41 +53,30 @@ under the License. org.codehaus.modello modello-maven-plugin + + 2.0.0 + ${project.basedir}/../../src/mdo + + src/main/mdo/settings.mdo + + + + + + packageModelV4=org.apache.maven.api.settings + locationTracking=true + generateLocationClasses=true + + - velocity + modello velocity - - - 2.0.0 - ${project.basedir}/../../src/mdo - - src/main/mdo/settings.mdo - - - - - - packageModelV4=org.apache.maven.api.settings - locationTracking=true - generateLocationClasses=true - - - - - modello-site-docs - xdoc xsd generate-resources - - 2.0.0 - - src/main/mdo/settings.mdo - - diff --git a/api/maven-api-toolchain/pom.xml b/api/maven-api-toolchain/pom.xml index 663148bb13..105d2973b0 100644 --- a/api/maven-api-toolchain/pom.xml +++ b/api/maven-api-toolchain/pom.xml @@ -46,27 +46,30 @@ under the License. org.codehaus.modello modello-maven-plugin + + 1.2.0 + ${project.basedir}/../../src/mdo + + src/main/mdo/toolchains.mdo + + + + + + packageModelV4=org.apache.maven.api.toolchain + locationTracking=true + generateLocationClasses=true + + - velocity + modello velocity + xdoc + xsd - - 1.2.0 - ${project.basedir}/../../src/mdo - - src/main/mdo/toolchains.mdo - - - - - - packageModelV4=org.apache.maven.api.toolchain - locationTracking=true - generateLocationClasses=true - - + generate-resources diff --git a/api/pom.xml b/api/pom.xml index 28585d8d0e..4cf4549a18 100644 --- a/api/pom.xml +++ b/api/pom.xml @@ -49,27 +49,6 @@ api - - - - - org.codehaus.modello - modello-maven-plugin - - - modello-site-docs - - xdoc - xsd - - none - - - - - - - reporting diff --git a/compat/maven-model/pom.xml b/compat/maven-model/pom.xml index 27f9af731a..2935494b67 100644 --- a/compat/maven-model/pom.xml +++ b/compat/maven-model/pom.xml @@ -95,20 +95,6 @@ under the License. - - modello-site-docs - - xdoc - - pre-site - - - modello-schema - - xsd - - generate-resources - model-v3 diff --git a/impl/maven-core/pom.xml b/impl/maven-core/pom.xml index 5a919513eb..75f59d090e 100644 --- a/impl/maven-core/pom.xml +++ b/impl/maven-core/pom.xml @@ -215,31 +215,6 @@ under the License. org.eclipse.sisu sisu-maven-plugin - - org.codehaus.modello - modello-maven-plugin - - 1.1.0 - - - - - - - modello-site-doc - - xdoc - - pre-site - - 1.0.0 - - src/main/mdo/extension.mdo - - - - - org.codehaus.mojo buildnumber-maven-plugin diff --git a/impl/maven-core/src/main/java/org/apache/maven/internal/impl/DefaultLifecycleRegistry.java b/impl/maven-core/src/main/java/org/apache/maven/internal/impl/DefaultLifecycleRegistry.java index 0bc9b9b86d..859821ceac 100644 --- a/impl/maven-core/src/main/java/org/apache/maven/internal/impl/DefaultLifecycleRegistry.java +++ b/impl/maven-core/src/main/java/org/apache/maven/internal/impl/DefaultLifecycleRegistry.java @@ -358,11 +358,13 @@ public class DefaultLifecycleRegistry implements LifecycleRegistry { @Override public Collection phases() { + // START SNIPPET: clean return List.of(phase( Phase.CLEAN, plugin( MAVEN_PLUGINS + "maven-clean-plugin:" + MAVEN_CLEAN_PLUGIN_VERSION + ":clean", Phase.CLEAN))); + // END SNIPPET: clean } @Override @@ -379,6 +381,7 @@ public class DefaultLifecycleRegistry implements LifecycleRegistry { @Override public Collection phases() { + // START SNIPPET: default return List.of(phase( ALL, phase(VALIDATE, phase(INITIALIZE)), @@ -410,6 +413,7 @@ public class DefaultLifecycleRegistry implements LifecycleRegistry { phase(INTEGRATION_TEST)), phase(INSTALL, after(PACKAGE)), phase(DEPLOY, after(PACKAGE)))); + // END SNIPPET: default } @Override @@ -468,12 +472,14 @@ public class DefaultLifecycleRegistry implements LifecycleRegistry { @Override public Collection phases() { + // START SNIPPET: site return List.of( phase(PHASE_SITE, plugin(MAVEN_SITE_PLUGIN + "site", PHASE_SITE)), phase( PHASE_SITE_DEPLOY, after(PHASE_SITE), plugin(MAVEN_SITE_PLUGIN + "deploy", PHASE_SITE_DEPLOY))); + // END SNIPPET: site } @Override diff --git a/impl/maven-core/src/site/apt/lifecycles.apt.vm b/impl/maven-core/src/site/apt/lifecycles.apt.vm index 5fa8d9ee0d..d5c132476a 100644 --- a/impl/maven-core/src/site/apt/lifecycles.apt.vm +++ b/impl/maven-core/src/site/apt/lifecycles.apt.vm @@ -25,7 +25,7 @@ Lifecycles Reference - Maven defines 4 lifecycles in {{{./apidocs/org/apache/maven/lifecycle/providers/package-summary.html}<<>>}} package: + Maven defines 3 lifecycles in {{{./apidocs/org/apache/maven/lifecycle/providers/package-summary.html}<<>>}} package: %{toc|fromDepth=2} @@ -34,22 +34,16 @@ Lifecycles Reference <<>> lifecycle is defined only with phases, <> any associated plugin binding: plugins bindings for this lifecycle are {{{./default-bindings.html}defined separately for each packaging}}: -%{snippet|id=default|file=${project.basedir}/src/main/java/org/apache/maven/lifecycle/providers/DefaultLifecycleProvider.java} +%{snippet|id=default|file=${project.basedir}/src/main/java/org/apache/maven/internal/impl/DefaultLifecycleRegistry.java} * <<>> Lifecycle <<>> lifecycle phases are defined with their plugins bindings: -%{snippet|id=clean|file=${project.basedir}/src/main/java/org/apache/maven/lifecycle/providers/CleanLifecycleProvider.java} +%{snippet|id=clean|file=${project.basedir}/src/main/java/org/apache/maven/internal/impl/DefaultLifecycleRegistry.java} * <<>> Lifecycle <<>> lifecycle phases are defined with their plugins bindings: -%{snippet|id=site|file=${project.basedir}/src/main/java/org/apache/maven/lifecycle/providers/SiteLifecycleProvider.java} - -* <<>> Lifecycle - - <<>> lifecycle phases are defined with their plugins bindings: - -%{snippet|id=wrapper|file=${project.basedir}/src/main/java/org/apache/maven/lifecycle/providers/WrapperLifecycleProvider.java} +%{snippet|id=site|file=${project.basedir}/src/main/java/org/apache/maven/internal/impl/DefaultLifecycleRegistry.java} diff --git a/impl/maven-impl/src/site/apt/dependency-types.apt b/impl/maven-impl/src/site/apt/dependency-types.apt new file mode 100644 index 0000000000..10bb5f02a0 --- /dev/null +++ b/impl/maven-impl/src/site/apt/dependency-types.apt @@ -0,0 +1,74 @@ +~~ 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. + + --- + Default Dependency Types + --- + Hervé Boutemy + --- + 2024-12-27 + --- + +Default Dependency Types Reference + + Defined in <<>> + ({{{./apidocs/org/apache/maven/internal/impl/resolver/type/DefaultTypeProvider.html}javadoc}}, + {{{./xref/org/apache/maven/internal/impl/resolver/type/DefaultTypeProvider.html}source}}): + +*-----------------------+---------------+------------+-----------+-----------------------+-----------------------+ +|| type || classifier || extension || language || path types || includesDependencies || +*-----------------------+---------------+------------+-----------+-----------------------+-----------------------+ +|| Maven || || || || || || +*-----------------------+---------------+------------+-----------+-----------------------+-----------------------+ +| <<>> | | <= type> | none | | | +*-----------------------+---------------+------------+-----------+-----------------------+-----------------------+ +| <<>> * | | <<>> | none | | | +*-----------------------+---------------+------------+-----------+-----------------------+-----------------------+ +| <<>> | | <<>> | java | classes | | +*-----------------------+---------------+------------+-----------+-----------------------+-----------------------+ +|| Java || || || || || || +*-----------------------+---------------+------------+-----------+-----------------------+-----------------------+ +| <<>> | | <= type> | java | classes, modules | | +*-----------------------+---------------+------------+-----------+-----------------------+-----------------------+ +| <<>> | <<>> | <<>> | java | | | +*-----------------------+---------------+------------+-----------+-----------------------+-----------------------+ +| <<>> | <<>> | <<>> | java | classes | | +*-----------------------+---------------+------------+-----------+-----------------------+-----------------------+ +| <<>> | <<>> | <<>> | java | classes, patch module | | +*-----------------------+---------------+------------+-----------+-----------------------+-----------------------+ +| <<>> * | <<>> | <<>> | java | modules | | +*-----------------------+---------------+------------+-----------+-----------------------+-----------------------+ +| <<>> * | <<>> | <<>> | java | classes | | +*-----------------------+---------------+------------+-----------+-----------------------+-----------------------+ +| <<>> * | <<>> | <<>> | java | classes | | +*-----------------------+---------------+------------+-----------+-----------------------+-----------------------+ +|| Java/Jakarta EE || || || || || || +*-----------------------+---------------+------------+-----------+-----------------------+-----------------------+ +| <<>> | | <<>> | java | classes | | +*-----------------------+---------------+------------+-----------+-----------------------+-----------------------+ +| <<>> | <<>> | <<>> | java | classes | | +*-----------------------+---------------+------------+-----------+-----------------------+-----------------------+ +| <<>> | | <= type> | java | | <<>> | +*-----------------------+---------------+------------+-----------+-----------------------+-----------------------+ +| <<>> | | <= type> | java | | <<>> | +*-----------------------+---------------+------------+-----------+-----------------------+-----------------------+ +| <<>> | | <= type> | java | | <<>> | +*-----------------------+---------------+------------+-----------+-----------------------+-----------------------+ +| <<>> * | | <= type> | java | | <<>> | +*-----------------------+---------------+------------+-----------+-----------------------+-----------------------+ + + * = new in Maven 4 \ No newline at end of file diff --git a/pom.xml b/pom.xml index c1806ff298..de984a9199 100644 --- a/pom.xml +++ b/pom.xml @@ -709,16 +709,6 @@ KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. - - - modello-site-docs - - xdoc - xsd - - pre-site - - diff --git a/src/site/site.xml b/src/site/site.xml index 2d6435fb8b..7a2e94d68e 100644 --- a/src/site/site.xml +++ b/src/site/site.xml @@ -47,9 +47,13 @@ under the License. - - - + + + + + + +