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/16 16:57:26 UTC

[maven] 05/06: [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 db49eef19ad690fb139a4b4a95e6a7d8e0c49d0c
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
---
 .github/workflows/maven.yml                        | 15 +++++-
 Jenkinsfile                                        |  6 ++-
 Jenkinsfile.its                                    |  2 +-
 .../pom.xml                                        | 31 ++++--------
 .../src/assembly}/bin.xml                          | 24 ++++-----
 .../src/assembly}/script.xml                       | 28 +++++------
 .../src/assembly}/script/download                  |  0
 .../src/assembly}/script/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                       | 28 +++++------
 .../src/assembly}/source/download                  |  0
 .../src/assembly}/source/download.cmd              |  0
 .../source/mvn/wrapper/MavenWrapperDownloader.java |  0
 apache-maven-wrapper/src/site/apt/index.apt.vm     | 58 ++++++++++++++++++++++
 apache-maven-wrapper/src/site/site.xml             | 31 ++++++++++++
 apache-maven/pom.xml                               |  6 +--
 maven-wrapper/src/site/apt/index.apt               |  4 +-
 pom.xml                                            |  2 +-
 src/site/xdoc/index.xml                            |  2 +-
 23 files changed, 165 insertions(+), 72 deletions(-)

diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml
index 733d929..addba89 100644
--- a/.github/workflows/maven.yml
+++ b/.github/workflows/maven.yml
@@ -46,6 +46,13 @@ jobs:
           name: built-maven
           path: apache-maven/target/
 
+      - name: Upload built Apache Maven Wrapper
+        uses: actions/upload-artifact@v2
+        if: ${{ matrix.os == 'ubuntu-latest' }}
+        with:
+          name: built-apache-maven-wrapper
+          path: apache-maven-wrapper/target/
+
       - name: Upload built Maven Wrapper
         uses: actions/upload-artifact@v2
         if: ${{ matrix.os == 'ubuntu-latest' }}
@@ -116,6 +123,12 @@ jobs:
           name: built-maven
           path: built-maven/
 
+      - name: Download built Apache Maven Wrapper
+        uses: actions/download-artifact@v2
+        with:
+          name: built-apache-maven-wrapper
+          path: built-apache-maven-wrapper/
+
       - name: Download built Maven Wrapper
         uses: actions/download-artifact@v2
         with:
@@ -131,4 +144,4 @@ jobs:
 
       - name: Running integration tests
         shell: bash
-        run: mvn install -e -B -V -Prun-its,embedded -Dmaven.repo.local="$HOME/.m2/repository" -DmavenDistro="$GITHUB_WORKSPACE/built-maven/apache-maven-bin.zip" -DwrapperDistroDir="$GITHUB_WORKSPACE/built-maven/" -DmavenWrapper="$GITHUB_WORKSPACE/built-maven-wrapper/maven-wrapper.jar" -f maven-integration-testing/pom.xml
+        run: mvn install -e -B -V -Prun-its,embedded -Dmaven.repo.local="$HOME/.m2/repository" -DmavenDistro="$GITHUB_WORKSPACE/built-maven/apache-maven-bin.zip" -DwrapperDistroDir="$GITHUB_WORKSPACE/built-apache-maven-wrapper/" -DmavenWrapper="$GITHUB_WORKSPACE/built-maven-wrapper/maven-wrapper.jar" -f maven-integration-testing/pom.xml
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 482cddd..eec5c7c 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/*/download</exclude>
-              <exclude>src/assembly/wrapper/*/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/*/download</exclude>
+              <exclude>src/assembly/*/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 76%
rename from apache-maven/src/assembly/wrapper/bin.xml
rename to apache-maven-wrapper/src/assembly/bin.xml
index 7321631..76cdc18 100644
--- a/apache-maven/src/assembly/wrapper/bin.xml
+++ b/apache-maven-wrapper/src/assembly/bin.xml
@@ -39,22 +39,22 @@ under the License.
   </dependencySets>
   <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/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>../apache-maven/src/assembly/shared/run.cmd</source>
       </sources>
       <destName>mvnw.cmd</destName>
       <outputDirectory>.</outputDirectory>
@@ -63,10 +63,10 @@ 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/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>../apache-maven/src/assembly/shared/run</source>
       </sources>
       <destName>mvnw</destName>
       <outputDirectory>.</outputDirectory>
@@ -77,9 +77,9 @@ 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>
   </fileSets>
-</assembly>
\ No newline at end of file
+</assembly>
diff --git a/apache-maven/src/assembly/wrapper/script.xml b/apache-maven-wrapper/src/assembly/script.xml
similarity index 70%
rename from apache-maven/src/assembly/wrapper/script.xml
rename to apache-maven-wrapper/src/assembly/script.xml
index 8d4d750..8f5406e 100644
--- a/apache-maven/src/assembly/wrapper/script.xml
+++ b/apache-maven-wrapper/src/assembly/script.xml
@@ -29,23 +29,23 @@ under the License.
   <includeBaseDirectory>false</includeBaseDirectory>
   <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/script/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/script/download.cmd</source>
+        <source>../apache-maven/src/assembly/shared/run.cmd</source>
       </sources>
       <destName>mvnw.cmd</destName>
       <outputDirectory>.</outputDirectory>
@@ -54,11 +54,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/script/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/script/download</source>
+        <source>../apache-maven/src/assembly/shared/run</source>
       </sources>
       <destName>mvnw</destName>
       <outputDirectory>.</outputDirectory>
@@ -69,9 +69,9 @@ 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>
   </fileSets>
-</assembly>
\ No newline at end of file
+</assembly>
diff --git a/apache-maven/src/assembly/wrapper/script/download b/apache-maven-wrapper/src/assembly/script/download
similarity index 100%
rename from apache-maven/src/assembly/wrapper/script/download
rename to apache-maven-wrapper/src/assembly/script/download
diff --git a/apache-maven/src/assembly/wrapper/script/download.cmd b/apache-maven-wrapper/src/assembly/script/download.cmd
similarity index 100%
rename from apache-maven/src/assembly/wrapper/script/download.cmd
rename to apache-maven-wrapper/src/assembly/script/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 70%
rename from apache-maven/src/assembly/wrapper/source.xml
rename to apache-maven-wrapper/src/assembly/source.xml
index 29c4564..cf8892c 100644
--- a/apache-maven/src/assembly/wrapper/source.xml
+++ b/apache-maven-wrapper/src/assembly/source.xml
@@ -29,23 +29,23 @@ under the License.
   <includeBaseDirectory>false</includeBaseDirectory>
   <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/source/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/source/download.cmd</source>
+        <source>../apache-maven/src/assembly/shared/run.cmd</source>
       </sources>
       <destName>mvnw.cmd</destName>
       <outputDirectory>.</outputDirectory>
@@ -54,11 +54,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/source/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/source/download</source>
+        <source>../apache-maven/src/assembly/shared/run</source>
       </sources>
       <destName>mvnw</destName>
       <outputDirectory>.</outputDirectory>
@@ -69,12 +69,12 @@ under the License.
   </files>
   <fileSets>
     <fileSet>
-      <directory>src/assembly/wrapper/shared/mvn</directory>
+      <directory>../apache-maven/src/assembly/shared/mvn</directory>
       <outputDirectory>.mvn</outputDirectory>
       <filtered>true</filtered>
     </fileSet>
     <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/download b/apache-maven-wrapper/src/assembly/source/download
similarity index 100%
rename from apache-maven/src/assembly/wrapper/source/download
rename to apache-maven-wrapper/src/assembly/source/download
diff --git a/apache-maven/src/assembly/wrapper/source/download.cmd b/apache-maven-wrapper/src/assembly/source/download.cmd
similarity index 100%
rename from apache-maven/src/assembly/wrapper/source/download.cmd
rename to apache-maven-wrapper/src/assembly/source/download.cmd
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/apache-maven-wrapper/src/site/apt/index.apt.vm b/apache-maven-wrapper/src/site/apt/index.apt.vm
new file mode 100644
index 0000000..a8ecdc9
--- /dev/null
+++ b/apache-maven-wrapper/src/site/apt/index.apt.vm
@@ -0,0 +1,58 @@
+~~ 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.
+
+ -----
+ ${project.name}
+ -----
+ Hervé Boutemy
+ -----
+ 2021-10-10
+ -----
+
+${project.name}
+
+ ${project.description}
+
+ Distributions types share the same base structure:
+
+----
+mvnw
+mvnw.cmd
+mvnwDebug
+mvnwDebug.cmd
+.mvn/wrapper/maven-wrapper.properties
+----
+
+ but every distribution has specific <<<mvnw>>>/<<<mvnw.cmd>>> scripts to manage different strategies to get {{{../maven-wrapper/}<<<maven-wrapper.jar>>>}}:
+ 
+ - <<<script>>> (default): <<<mvnw>>>/<<<mvnw.cmd>>> scripts will download {{{../maven-wrapper/}<<<maven-wrapper.jar>>>}} with <<<wget>>> or <<<curl>>> on Unix or PowerShell on Windows
+ 
+ - <<<bin>>>: no need to download <<<maven-wrapper.jar>>> binary, it is directly provided and used from project source tree:
+
+----
+.mvn/wrapper/maven-wrapper.jar
+----
+
+ - <<<source>>>: <<<mvnw>>>/<<<mvnw.cmd>>> scripts will compile <<<MavenWrapperDownloader.java>>> source then run the class to download {{{../maven-wrapper/}<<<maven-wrapper.jar>>>}}:
+
+----
+.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>>>}}.
diff --git a/apache-maven-wrapper/src/site/site.xml b/apache-maven-wrapper/src/site/site.xml
new file mode 100644
index 0000000..cd7807c
--- /dev/null
+++ b/apache-maven-wrapper/src/site/site.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+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.
+-->
+
+<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 661071c..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/*/download</exclude>
-              <exclude>src/assembly/wrapper/*/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 eb63fa1..cbaa25e 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>
     <module>maven-toolchain-model</module>
     <module>maven-toolchain-builder</module>
   </modules>
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/" />