You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by hb...@apache.org on 2021/10/13 17:57:54 UTC
[maven] 07/08: [MNG-6914] move apache-maven-wrapper to its own
separate Maven module
This is an automated email from the ASF dual-hosted git repository.
hboutemy pushed a commit to branch MNG-6914_2
in repository https://gitbox.apache.org/repos/asf/maven.git
commit f7ff3f5f1875e781c5ea4bb91bad5535f8407925
Author: Hervé Boutemy <hb...@apache.org>
AuthorDate: Sun Oct 10 23:35:06 2021 +0200
[MNG-6914] move apache-maven-wrapper to its own separate Maven module
---
Jenkinsfile | 6 +++-
Jenkinsfile.its | 2 +-
.../pom.xml | 31 ++++++------------
.../src/assembly}/bin.xml | 2 +-
.../src/assembly}/script.xml | 2 +-
.../src/assembly}/shared.xml | 26 +++++++--------
.../src/assembly}/shared/download | 0
.../src/assembly}/shared/download.cmd | 0
.../shared/mvn/wrapper/maven-wrapper.properties | 0
.../src/assembly}/shared/mvnwDebug | 0
.../src/assembly}/shared/mvnwDebug.cmd | 0
.../src/assembly}/shared/mvnwlauncher | 0
.../src/assembly}/shared/mvnwlauncher.cmd | 0
.../src/assembly}/source.xml | 4 +--
.../source/mvn/wrapper/MavenWrapperDownloader.java | 0
.../src/site/apt/index.apt.vm | 38 +++++++++++++++++++---
.../src/site/site.xml | 24 +++++++-------
apache-maven/pom.xml | 6 +---
maven-wrapper/src/site/apt/index.apt | 4 ++-
pom.xml | 2 +-
src/site/xdoc/index.xml | 2 +-
21 files changed, 84 insertions(+), 65 deletions(-)
diff --git a/Jenkinsfile b/Jenkinsfile
index 54b8652..15947ed 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -63,7 +63,10 @@ node(jenkinsEnv.nodeSelection(osNode)) {
sh "mvn ${MAVEN_GOAL} -B -U -e -fae -V -Dmaven.test.failure.ignore=true -P versionlessMavenDist"
}
dir ('apache-maven/target') {
- stash includes: 'apache-maven-bin.zip,apache-maven-wrapper-*.zip', name: 'maven-dist'
+ stash includes: 'apache-maven-bin.zip', name: 'maven-dist'
+ }
+ dir ('apache-maven-wrapper/target') {
+ stash includes: 'apache-maven-wrapper-*.zip', name: 'maven-wrapper-dist'
}
dir ('maven-wrapper/target') {
stash includes: 'maven-wrapper.jar', name: 'wrapper-dist'
@@ -102,6 +105,7 @@ for (String os in runITsOses) {
}
dir('dists') {
unstash 'maven-dist'
+ unstash 'maven-wrapper-dist'
unstash 'wrapper-dist'
}
try {
diff --git a/Jenkinsfile.its b/Jenkinsfile.its
index 5df3e2c..8258613 100644
--- a/Jenkinsfile.its
+++ b/Jenkinsfile.its
@@ -41,7 +41,7 @@ pipeline {
git url: "https://github.com/apache/maven-integration-testing.git", branch: "${ITS_BRANCH}"
sh "ls -lrt ${env.WORKSPACE}/apache-maven/target/"
withEnv(["JAVA_HOME=${ tool "JDK 1.8 (latest)" }", "PATH+MAVEN=${tool 'Maven 3.6.3'}/bin:${env.JAVA_HOME}/bin"]) {
- sh "mvn clean install -V -B -Prun-its,embedded -Dmaven.test.failure.ignore=true -Dmaven.repo.local=${env.WORKSPACE}/repo -DmavenDistro=${env.WORKSPACE}/apache-maven/target/apache-maven-bin.zip -DwrapperDistroDir=${env.WORKSPACE}/apache-maven/target -DmavenWrapper=${env.WORKSPACE}/maven-wrapper/target/maven-wrapper.jar"
+ sh "mvn clean install -V -B -Prun-its,embedded -Dmaven.test.failure.ignore=true -Dmaven.repo.local=${env.WORKSPACE}/repo -DmavenDistro=${env.WORKSPACE}/apache-maven/target/apache-maven-bin.zip -DwrapperDistroDir=${env.WORKSPACE}/apache-maven-wrapper/target -DmavenWrapper=${env.WORKSPACE}/maven-wrapper/target/maven-wrapper.jar"
}
}
}
diff --git a/apache-maven/maven-wrapper.pom b/apache-maven-wrapper/pom.xml
similarity index 71%
rename from apache-maven/maven-wrapper.pom
rename to apache-maven-wrapper/pom.xml
index 4396529..259bd88 100644
--- a/apache-maven/maven-wrapper.pom
+++ b/apache-maven-wrapper/pom.xml
@@ -31,7 +31,7 @@ under the License.
<packaging>pom</packaging>
<name>Apache Maven Wrapper Distribution</name>
- <description>The Apache Maven Wrapper distribution in zip and tar.gz formats.</description>
+ <description>The Apache Maven Wrapper distribution zips in 3 types: script, bin and source.</description>
<build>
<pluginManagement>
@@ -42,19 +42,11 @@ under the License.
<configuration>
<excludes combine.children="append">
<exclude>src/assembly/maven/bin/m2.conf</exclude>
- <!-- these are partial scripts, resulting in mvn/mwnw scripts -->
- <exclude>src/assembly/shared/init</exclude>
- <exclude>src/assembly/shared/init.cmd</exclude>
- <exclude>src/assembly/shared/mvnlauncher</exclude>
- <exclude>src/assembly/shared/mvnlauncher.cmd</exclude>
- <exclude>src/assembly/shared/mvnvalidate</exclude>
- <exclude>src/assembly/shared/mvnvalidate.cmd</exclude>
- <exclude>src/assembly/shared/run</exclude>
- <exclude>src/assembly/shared/run.cmd</exclude>
- <exclude>src/assembly/wrapper/shared/mvnwlauncher</exclude>
- <exclude>src/assembly/wrapper/shared/mvnwlauncher.cmd</exclude>
- <exclude>src/assembly/wrapper/shared/download</exclude>
- <exclude>src/assembly/wrapper/shared/download.cmd</exclude>
+ <!-- these are partial scripts, resulting in mwnw scripts -->
+ <exclude>src/assembly/shared/mvnwlauncher</exclude>
+ <exclude>src/assembly/shared/mvnwlauncher.cmd</exclude>
+ <exclude>src/assembly/shared/download</exclude>
+ <exclude>src/assembly/shared/download.cmd</exclude>
</excludes>
</configuration>
</plugin>
@@ -81,9 +73,9 @@ under the License.
</executions>
<configuration>
<descriptors>
- <descriptor>src/assembly/wrapper/script.xml</descriptor>
- <descriptor>src/assembly/wrapper/bin.xml</descriptor>
- <descriptor>src/assembly/wrapper/source.xml</descriptor>
+ <descriptor>src/assembly/script.xml</descriptor>
+ <descriptor>src/assembly/bin.xml</descriptor>
+ <descriptor>src/assembly/source.xml</descriptor>
</descriptors>
</configuration>
</plugin>
@@ -103,7 +95,7 @@ under the License.
<id>apache-release</id>
<build>
<plugins>
- <!-- calculate checksums of source release for Apache dist area -->
+ <!-- calculate sha512 checksums -->
<plugin>
<groupId>net.nicoulaj.maven.plugins</groupId>
<artifactId>checksum-maven-plugin</artifactId>
@@ -121,11 +113,8 @@ under the License.
<directory>${project.build.directory}</directory>
<includes>
<include>${project.artifactId}-${project.version}-bin.zip</include>
- <include>${project.artifactId}-${project.version}-bin.tar.gz</include>
<include>${project.artifactId}-${project.version}-script.zip</include>
- <include>${project.artifactId}-${project.version}-script.tar.gz</include>
<include>${project.artifactId}-${project.version}-source.zip</include>
- <include>${project.artifactId}-${project.version}-source.tar.gz</include>
</includes>
</fileSet>
</fileSets>
diff --git a/apache-maven/src/assembly/wrapper/bin.xml b/apache-maven-wrapper/src/assembly/bin.xml
similarity index 94%
rename from apache-maven/src/assembly/wrapper/bin.xml
rename to apache-maven-wrapper/src/assembly/bin.xml
index 608c324..017bada 100644
--- a/apache-maven/src/assembly/wrapper/bin.xml
+++ b/apache-maven-wrapper/src/assembly/bin.xml
@@ -38,6 +38,6 @@ under the License.
</dependencySet>
</dependencySets>
<componentDescriptors>
- <componentDescriptor>src/assembly/wrapper/shared.xml</componentDescriptor>
+ <componentDescriptor>src/assembly/shared.xml</componentDescriptor>
</componentDescriptors>
</assembly>
\ No newline at end of file
diff --git a/apache-maven/src/assembly/wrapper/script.xml b/apache-maven-wrapper/src/assembly/script.xml
similarity index 93%
copy from apache-maven/src/assembly/wrapper/script.xml
copy to apache-maven-wrapper/src/assembly/script.xml
index 5ccd5f8..fec447b 100644
--- a/apache-maven/src/assembly/wrapper/script.xml
+++ b/apache-maven-wrapper/src/assembly/script.xml
@@ -28,6 +28,6 @@ under the License.
</formats>
<includeBaseDirectory>false</includeBaseDirectory>
<componentDescriptors>
- <componentDescriptor>src/assembly/wrapper/shared.xml</componentDescriptor>
+ <componentDescriptor>src/assembly/shared.xml</componentDescriptor>
</componentDescriptors>
</assembly>
\ No newline at end of file
diff --git a/apache-maven/src/assembly/wrapper/shared.xml b/apache-maven-wrapper/src/assembly/shared.xml
similarity index 70%
rename from apache-maven/src/assembly/wrapper/shared.xml
rename to apache-maven-wrapper/src/assembly/shared.xml
index 831c901..32a1694 100644
--- a/apache-maven/src/assembly/wrapper/shared.xml
+++ b/apache-maven-wrapper/src/assembly/shared.xml
@@ -23,23 +23,23 @@ under the License.
xsi:schemaLocation="http://maven.apache.org/ASSEMBLY-COMPONENT/2.1.0 http://maven.apache.org/xsd/assembly-component-2.1.0.xsd">
<files>
<file>
- <source>src/assembly/wrapper/shared/mvnwDebug.cmd</source>
+ <source>src/assembly/shared/mvnwDebug.cmd</source>
<outputDirectory>.</outputDirectory>
<lineEnding>dos</lineEnding>
</file>
<file>
- <source>src/assembly/wrapper/shared/mvnwDebug</source>
+ <source>src/assembly/shared/mvnwDebug</source>
<outputDirectory>.</outputDirectory>
<lineEnding>unix</lineEnding>
<fileMode>0755</fileMode>
</file>
<file>
<sources>
- <source>src/assembly/shared/validate.cmd</source>
- <source>src/assembly/shared/init.cmd</source>
- <source>src/assembly/wrapper/shared/mvnwlauncher.cmd</source>
- <source>src/assembly/wrapper/shared/download.cmd</source>
- <source>src/assembly/shared/run.cmd</source>
+ <source>../apache-maven/src/assembly/shared/validate.cmd</source>
+ <source>../apache-maven/src/assembly/shared/init.cmd</source>
+ <source>src/assembly/shared/mvnwlauncher.cmd</source>
+ <source>src/assembly/shared/download.cmd</source>
+ <source>../apache-maven/src/assembly/shared/run.cmd</source>
</sources>
<destName>mvnw.cmd</destName>
<outputDirectory>.</outputDirectory>
@@ -48,11 +48,11 @@ under the License.
</file>
<file>
<sources>
- <source>src/assembly/shared/validate</source>
- <source>src/assembly/shared/init</source>
- <source>src/assembly/wrapper/shared/mvnwlauncher</source>
- <source>src/assembly/wrapper/shared/download</source>
- <source>src/assembly/shared/run</source>
+ <source>../apache-maven/src/assembly/shared/validate</source>
+ <source>../apache-maven/src/assembly/shared/init</source>
+ <source>src/assembly/shared/mvnwlauncher</source>
+ <source>src/assembly/shared/download</source>
+ <source>../apache-maven/src/assembly/shared/run</source>
</sources>
<destName>mvnw</destName>
<outputDirectory>.</outputDirectory>
@@ -63,7 +63,7 @@ under the License.
</files>
<fileSets>
<fileSet>
- <directory>src/assembly/wrapper/shared/mvn</directory>
+ <directory>src/assembly/shared/mvn</directory>
<outputDirectory>.mvn</outputDirectory>
<filtered>true</filtered>
</fileSet>
diff --git a/apache-maven/src/assembly/wrapper/shared/download b/apache-maven-wrapper/src/assembly/shared/download
similarity index 100%
rename from apache-maven/src/assembly/wrapper/shared/download
rename to apache-maven-wrapper/src/assembly/shared/download
diff --git a/apache-maven/src/assembly/wrapper/shared/download.cmd b/apache-maven-wrapper/src/assembly/shared/download.cmd
similarity index 100%
rename from apache-maven/src/assembly/wrapper/shared/download.cmd
rename to apache-maven-wrapper/src/assembly/shared/download.cmd
diff --git a/apache-maven/src/assembly/wrapper/shared/mvn/wrapper/maven-wrapper.properties b/apache-maven-wrapper/src/assembly/shared/mvn/wrapper/maven-wrapper.properties
similarity index 100%
rename from apache-maven/src/assembly/wrapper/shared/mvn/wrapper/maven-wrapper.properties
rename to apache-maven-wrapper/src/assembly/shared/mvn/wrapper/maven-wrapper.properties
diff --git a/apache-maven/src/assembly/wrapper/shared/mvnwDebug b/apache-maven-wrapper/src/assembly/shared/mvnwDebug
similarity index 100%
rename from apache-maven/src/assembly/wrapper/shared/mvnwDebug
rename to apache-maven-wrapper/src/assembly/shared/mvnwDebug
diff --git a/apache-maven/src/assembly/wrapper/shared/mvnwDebug.cmd b/apache-maven-wrapper/src/assembly/shared/mvnwDebug.cmd
similarity index 100%
rename from apache-maven/src/assembly/wrapper/shared/mvnwDebug.cmd
rename to apache-maven-wrapper/src/assembly/shared/mvnwDebug.cmd
diff --git a/apache-maven/src/assembly/wrapper/shared/mvnwlauncher b/apache-maven-wrapper/src/assembly/shared/mvnwlauncher
similarity index 100%
rename from apache-maven/src/assembly/wrapper/shared/mvnwlauncher
rename to apache-maven-wrapper/src/assembly/shared/mvnwlauncher
diff --git a/apache-maven/src/assembly/wrapper/shared/mvnwlauncher.cmd b/apache-maven-wrapper/src/assembly/shared/mvnwlauncher.cmd
similarity index 100%
rename from apache-maven/src/assembly/wrapper/shared/mvnwlauncher.cmd
rename to apache-maven-wrapper/src/assembly/shared/mvnwlauncher.cmd
diff --git a/apache-maven/src/assembly/wrapper/source.xml b/apache-maven-wrapper/src/assembly/source.xml
similarity index 90%
rename from apache-maven/src/assembly/wrapper/source.xml
rename to apache-maven-wrapper/src/assembly/source.xml
index 1fdc1e2..63f7a2b 100644
--- a/apache-maven/src/assembly/wrapper/source.xml
+++ b/apache-maven-wrapper/src/assembly/source.xml
@@ -28,11 +28,11 @@ under the License.
</formats>
<includeBaseDirectory>false</includeBaseDirectory>
<componentDescriptors>
- <componentDescriptor>src/assembly/wrapper/shared.xml</componentDescriptor>
+ <componentDescriptor>src/assembly/shared.xml</componentDescriptor>
</componentDescriptors>
<fileSets>
<fileSet>
- <directory>src/assembly/wrapper/source/mvn</directory>
+ <directory>src/assembly/source/mvn</directory>
<outputDirectory>.mvn</outputDirectory>
<filtered>true</filtered>
</fileSet>
diff --git a/apache-maven/src/assembly/wrapper/source/mvn/wrapper/MavenWrapperDownloader.java b/apache-maven-wrapper/src/assembly/source/mvn/wrapper/MavenWrapperDownloader.java
similarity index 100%
rename from apache-maven/src/assembly/wrapper/source/mvn/wrapper/MavenWrapperDownloader.java
rename to apache-maven-wrapper/src/assembly/source/mvn/wrapper/MavenWrapperDownloader.java
diff --git a/maven-wrapper/src/site/apt/index.apt b/apache-maven-wrapper/src/site/apt/index.apt.vm
similarity index 50%
copy from maven-wrapper/src/site/apt/index.apt
copy to apache-maven-wrapper/src/site/apt/index.apt.vm
index 42d71ca..5931d9a 100644
--- a/maven-wrapper/src/site/apt/index.apt
+++ b/apache-maven-wrapper/src/site/apt/index.apt.vm
@@ -16,13 +16,43 @@
~~ under the License.
-----
- Introduction
+ ${project.name}
-----
Hervé Boutemy
-----
- 2021-04-05
+ 2021-10-10
-----
-Maven Wrapper
+${project.name}
- Maven Wrapper...
\ No newline at end of file
+ ${project.description}
+
+ Distributions types share the same base content:
+
+ - <<<script>>> (default): contains only scripts that will download {{{../maven-wrapper/}<<<maven-wrapper.jar>>>}} with <<<wget>>> or <<<curl>>> on Unix or PowerShell on Windows:
+
+----
+mvnw
+mvnw.cmd
+mvnwDebug
+mvnwDebug.cmd
+.mvn/wrapper/maven-wrapper.properties
+----
+
+ - <<<bin>>>: in addition to <<<scripts>>>, provides <<<maven-wrapper.jar>>> binary:
+
+----
+.mvn/wrapper/maven-wrapper.jar
+----
+
+ - <<<source>>>: in addition to <<<scripts>>>, provides <<<MavenWrapperDownloader.java>>> source:
+
+----
+.mvn/wrapper/MavenWrapperDownloader.java
+----
+
+ []
+
+ Distribution can be installed in a project either by unpacking zip archive by hand, or by using {{{/plugins/maven-wrapper-plugin/}<<<wrapper:wrapper>>>}}.
+
+
\ No newline at end of file
diff --git a/apache-maven/src/assembly/wrapper/script.xml b/apache-maven-wrapper/src/site/site.xml
similarity index 58%
rename from apache-maven/src/assembly/wrapper/script.xml
rename to apache-maven-wrapper/src/site/site.xml
index 5ccd5f8..cd7807c 100644
--- a/apache-maven/src/assembly/wrapper/script.xml
+++ b/apache-maven-wrapper/src/site/site.xml
@@ -9,7 +9,7 @@ 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
+ 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
@@ -19,15 +19,13 @@ specific language governing permissions and limitations
under the License.
-->
-<assembly xmlns="http://maven.apache.org/ASSEMBLY/2.1.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/ASSEMBLY/2.1.0 http://maven.apache.org/xsd/assembly-2.1.0.xsd">
- <id>script</id>
- <formats>
- <format>zip</format>
- </formats>
- <includeBaseDirectory>false</includeBaseDirectory>
- <componentDescriptors>
- <componentDescriptor>src/assembly/wrapper/shared.xml</componentDescriptor>
- </componentDescriptors>
-</assembly>
\ No newline at end of file
+<project xmlns="http://maven.apache.org/DECORATION/1.8.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/DECORATION/1.8.0 http://maven.apache.org/xsd/decoration-1.8.0.xsd">
+
+ <edit>${project.scm.url}</edit>
+
+ <body>
+ <menu ref="parent"/>
+ <menu ref="reports"/>
+ </body>
+</project>
\ No newline at end of file
diff --git a/apache-maven/pom.xml b/apache-maven/pom.xml
index 6436534..40cfb25 100644
--- a/apache-maven/pom.xml
+++ b/apache-maven/pom.xml
@@ -125,7 +125,7 @@ under the License.
<configuration>
<excludes combine.children="append">
<exclude>src/assembly/maven/bin/m2.conf</exclude>
- <!-- these are partial scripts, resulting in mvn/mwnw scripts -->
+ <!-- these are partial scripts, resulting in mvn scripts -->
<exclude>src/assembly/shared/init</exclude>
<exclude>src/assembly/shared/init.cmd</exclude>
<exclude>src/assembly/shared/mvnlauncher</exclude>
@@ -134,10 +134,6 @@ under the License.
<exclude>src/assembly/shared/mvnvalidate.cmd</exclude>
<exclude>src/assembly/shared/run</exclude>
<exclude>src/assembly/shared/run.cmd</exclude>
- <exclude>src/assembly/wrapper/shared/mvnwlauncher</exclude>
- <exclude>src/assembly/wrapper/shared/mvnwlauncher.cmd</exclude>
- <exclude>src/assembly/wrapper/shared/download</exclude>
- <exclude>src/assembly/wrapper/shared/download.cmd</exclude>
</excludes>
</configuration>
</plugin>
diff --git a/maven-wrapper/src/site/apt/index.apt b/maven-wrapper/src/site/apt/index.apt
index 42d71ca..bf70504 100644
--- a/maven-wrapper/src/site/apt/index.apt
+++ b/maven-wrapper/src/site/apt/index.apt
@@ -25,4 +25,6 @@
Maven Wrapper
- Maven Wrapper...
\ No newline at end of file
+ Maven Wrapper dowloads Maven distribution if not already in cache, then launches Maven.
+
+ It is called by {{{../apache-maven-wrapper/}<<<mvnw>>>/<<<mvnw.cmd>>> scripts}} that need to be installed in the project and called instead of <<<mvn>>>/<<<mvn.cmd>>>.
diff --git a/pom.xml b/pom.xml
index 49875c5..abc45a9 100644
--- a/pom.xml
+++ b/pom.xml
@@ -97,7 +97,7 @@ under the License.
<module>maven-compat</module>
<module>apache-maven</module> <!-- rename to apache-maven/maven.pom after RAT-268 -->
<module>maven-wrapper</module>
- <module>apache-maven/maven-wrapper.pom</module>
+ <module>apache-maven-wrapper</module>
</modules>
<scm>
diff --git a/src/site/xdoc/index.xml b/src/site/xdoc/index.xml
index af12e70..a00e276 100644
--- a/src/site/xdoc/index.xml
+++ b/src/site/xdoc/index.xml
@@ -42,7 +42,7 @@ under the License.
<p>
<img src="images/maven-deps.png" width="1046" height="784" border="0" usemap="#Maven_dependencies" />
<map name="Maven_dependencies">
- <area shape="rect" coords="433,1,658,41" alt="apache-maven-wrapper" href="apache-maven/" />
+ <area shape="rect" coords="433,1,658,41" alt="apache-maven-wrapper" href="apache-maven-wrapper/" />
<area shape="rect" coords="711,0,959,40" alt="maven-wrapper-plugin" href="/plugins/maven-wrapper-plugin/" />
<area shape="rect" coords="488,67,604,107" alt="maven-wrapper" href="maven-wrapper/" />
<area shape="rect" coords="378,132,467,172" alt="maven-bom" href="maven-bom/" />