[pkg-java] r17419 - in trunk/maven-plugin-tools/debian: . patches

Emmanuel Bourg ebourg-guest at alioth.debian.org
Mon Nov 4 16:56:43 UTC 2013


Author: ebourg-guest
Date: 2013-11-04 16:56:42 +0000 (Mon, 04 Nov 2013)
New Revision: 17419

Added:
   trunk/maven-plugin-tools/debian/components-tools-annotations.xml
   trunk/maven-plugin-tools/debian/components-tools-ant.xml
   trunk/maven-plugin-tools/debian/components-tools-beanshell.xml
   trunk/maven-plugin-tools/debian/components-tools-java.xml
   trunk/maven-plugin-tools/debian/patches/
   trunk/maven-plugin-tools/debian/patches/01-maven2-api-compatibility.patch
   trunk/maven-plugin-tools/debian/patches/02-plexus-archiver1-compatibility.patch
   trunk/maven-plugin-tools/debian/patches/03-plexus-utils2-compatibility.patch
   trunk/maven-plugin-tools/debian/patches/series
Modified:
   trunk/maven-plugin-tools/debian/build.properties
   trunk/maven-plugin-tools/debian/build.xml
   trunk/maven-plugin-tools/debian/changelog
   trunk/maven-plugin-tools/debian/control
   trunk/maven-plugin-tools/debian/libmaven-plugin-tools-java.poms
   trunk/maven-plugin-tools/debian/maven.rules
   trunk/maven-plugin-tools/debian/plugin.xml
   trunk/maven-plugin-tools/debian/rules
Log:
New upstream release (Closes: #691932)
Added patches to remain compatible with the versions of plexus-archiver and plexus-utils in Debian
Install the news artifacts: maven-plugin-annotations, maven-plugin-tools-annotations, maven-plugin-tools-generators, maven-script-ant and maven-script-beanshell
Refreshed the plugin descriptor debian/plugin.xml
Use XZ compression for the upstream tarball
debian/control: Updated Standards-Version to 3.9.5 (no changes)



Modified: trunk/maven-plugin-tools/debian/build.properties
===================================================================
--- trunk/maven-plugin-tools/debian/build.properties	2013-11-04 16:44:59 UTC (rev 17418)
+++ trunk/maven-plugin-tools/debian/build.properties	2013-11-04 16:56:42 UTC (rev 17419)
@@ -2,9 +2,14 @@
 build.directory=target
 maven.test.skip=true
 classpath.compile = \
+            ${basedir}/maven-plugin-annotations/target/classes:\
             ${basedir}/maven-plugin-tools-api/target/classes:\
+            ${basedir}/maven-plugin-tools-annotations/target/classes:\
+            ${basedir}/maven-plugin-tools-generators/target/classes:\
             ${basedir}/maven-plugin-tools-model/target/classes:\
             ${basedir}/maven-plugin-tools-java/target/classes:\
+            /usr/share/java/asm3.jar:\
+            /usr/share/java/asm3-commons.jar:\
             /usr/share/java/maven-artifact.jar:\
             /usr/share/java/maven-artifact-manager.jar:\
             /usr/share/java/maven-core.jar:\
@@ -25,7 +30,13 @@
             /usr/share/java/xbean-reflect.jar:\
             /usr/share/java/qdox.jar:\
             /usr/share/java/bsh.jar:\
+            /usr/share/java/plexus-ant-factory.jar:\
+            /usr/share/java/plexus-archiver.jar:\
+            /usr/share/java/plexus-bsh-factory.jar:\
+            /usr/share/java/plexus-component-annotations-1.5.jar:\
             /usr/share/java/plexus-utils.jar:\
             /usr/share/java/plexus-classworlds.jar:\
-            /usr/share/java/plexus-container-default-alpha.jar
+            /usr/share/java/plexus-container-default-alpha.jar:\
+            /usr/share/java/plexus-velocity.jar:\
+            /usr/share/java/velocity.jar
 build.javaVersion=1.5

Modified: trunk/maven-plugin-tools/debian/build.xml
===================================================================
--- trunk/maven-plugin-tools/debian/build.xml	2013-11-04 16:44:59 UTC (rev 17418)
+++ trunk/maven-plugin-tools/debian/build.xml	2013-11-04 16:56:42 UTC (rev 17419)
@@ -19,6 +19,7 @@
   <macrodef name="packagemodule">
     <attribute name="dir"/>
     <sequential>
+      <echo message="Packaging module @{dir}..."/>
       <ant target="package" antfile="${maven.build}" dir="@{dir}">
         <property name="debian.dir" location="debian" />
         <property name="project.dir" value="@{dir}" />
@@ -60,6 +61,7 @@
     <attribute name="artifactId" default="@{dir}"/>
     <attribute name="group" default="plugin-tools"/>
     <sequential>
+       <echo message="Building @{group}:@{artifactId}..."/>
        <ant target="package" antfile="${maven.build}" dir="@{dir}">
         <property name="debian.dir" location="debian" />
         <property name="project.dir" value="@{project.dir}" />
@@ -95,19 +97,40 @@
       </filterset>
     </copy>
 
+
+    <!-- Copy the plexus component descriptors. The descriptors are generated
+         by post processing the compiled classes, but maven-ant-helper doesn't
+         know how to do that yet, so we inject them manually for now -->
+    <mkdir dir="maven-plugin-tools-annotations/target/classes/META-INF/plexus/" />
+    <copy file="debian/components-tools-annotations.xml" tofile="maven-plugin-tools-annotations/target/classes/META-INF/plexus/components.xml"/>
+
+    <mkdir dir="maven-plugin-tools-ant/target/classes/META-INF/plexus/" />
+    <copy file="debian/components-tools-ant.xml" tofile="maven-plugin-tools-ant/target/classes/META-INF/plexus/components.xml"/>
+
+    <mkdir dir="maven-plugin-tools-beanshell/target/classes/META-INF/plexus/" />
+    <copy file="debian/components-tools-beanshell.xml" tofile="maven-plugin-tools-beanshell/target/classes/META-INF/plexus/components.xml"/>
+
+    <mkdir dir="maven-plugin-tools-java/target/classes/META-INF/plexus/" />
+    <copy file="debian/components-tools-java.xml" tofile="maven-plugin-tools-java/target/classes/META-INF/plexus/components.xml"/>
+
+
     <package-and-local-deploy dir="." project.dir="" artifactId="maven-plugin-tools" />
     <package-and-local-deploy dir="maven-plugin-tools-api" />
+    <package-and-local-deploy dir="maven-plugin-annotations" />
+    <package-and-local-deploy dir="maven-plugin-tools-annotations" />
     <package-and-local-deploy dir="maven-plugin-tools-model" />
     <package-and-local-deploy dir="maven-plugin-tools-ant"/>
     <package-and-local-deploy dir="maven-plugin-tools-beanshell"/>
+    <package-and-local-deploy dir="maven-plugin-tools-generators"/>
     <package-and-local-deploy dir="maven-plugin-tools-java"/>
     <package-and-local-deploy dir="maven-plugin-tools-javadoc"/>
+    <package-and-local-deploy dir="maven-script/maven-script-ant" artifactId="maven-script-ant"/>
+    <package-and-local-deploy dir="maven-script/maven-script-beanshell" artifactId="maven-script-beanshell"/>
     <package-and-local-deploy dir="maven-plugin-plugin" group="plugins"/>
 
     <!-- Calls mvn plugin:descriptor on maven-plugin-plugin -->
     <path id="maven.classpath">
       <fileset dir="/usr/share/maven-repo">
-        <include name="backport-util-concurrent/backport-util-concurrent/debian/backport-util-concurrent-debian.jar"/>
         <include name="classworlds/classworlds/debian/classworlds-debian.jar"/>
         <include name="com/jcraft/jsch/debian/jsch-debian.jar"/>
         <include name="commons-cli/commons-cli/debian/commons-cli-debian.jar"/>
@@ -160,11 +183,16 @@
     <!-- re-package, this time with the correct pom files -->
     <packagemodule dir="" />
     <packagemodule dir="maven-plugin-tools-api" />
+    <packagemodule dir="maven-plugin-annotations" />
+    <packagemodule dir="maven-plugin-tools-annotations" />
     <packagemodule dir="maven-plugin-tools-model" />
     <packagemodule dir="maven-plugin-tools-ant"/>
     <packagemodule dir="maven-plugin-tools-beanshell"/>
+    <packagemodule dir="maven-plugin-tools-generators"/>
     <packagemodule dir="maven-plugin-tools-java"/>
     <packagemodule dir="maven-plugin-tools-javadoc"/>
+    <packagemodule dir="maven-script/maven-script-ant"/>
+    <packagemodule dir="maven-script/maven-script-beanshell"/>
     <packagemodule dir="maven-plugin-plugin"/>
 
   </target>

Modified: trunk/maven-plugin-tools/debian/changelog
===================================================================
--- trunk/maven-plugin-tools/debian/changelog	2013-11-04 16:44:59 UTC (rev 17418)
+++ trunk/maven-plugin-tools/debian/changelog	2013-11-04 16:56:42 UTC (rev 17419)
@@ -1,9 +1,17 @@
-maven-plugin-tools (2.8-4) UNRELEASED; urgency=low
+maven-plugin-tools (3.2-1) unstable; urgency=low
 
   * Team upload.
+  * New upstream release (Closes: #691932)
+    - Added patches to remain compatible with the versions of plexus-archiver
+      and plexus-utils in Debian
+    - Install the news artifacts: maven-plugin-annotations,
+      maven-plugin-tools-annotations, maven-plugin-tools-generators,
+      maven-script-ant and maven-script-beanshell
+    - Refreshed the plugin descriptor debian/plugin.xml
   * Use XZ compression for the upstream tarball
+  * debian/control: Updated Standards-Version to 3.9.5 (no changes)
 
- -- Emmanuel Bourg <ebourg at apache.org>  Fri, 18 Oct 2013 17:27:06 +0200
+ -- Emmanuel Bourg <ebourg at apache.org>  Mon, 04 Nov 2013 17:55:38 +0100
 
 maven-plugin-tools (2.8-3) unstable; urgency=low
 

Added: trunk/maven-plugin-tools/debian/components-tools-annotations.xml
===================================================================
--- trunk/maven-plugin-tools/debian/components-tools-annotations.xml	                        (rev 0)
+++ trunk/maven-plugin-tools/debian/components-tools-annotations.xml	2013-11-04 16:56:42 UTC (rev 17419)
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<component-set>
+  <components>
+    <component>
+      <role>org.apache.maven.tools.plugin.annotations.scanner.MojoAnnotationsScanner</role>
+      <role-hint>default</role-hint>
+      <implementation>org.apache.maven.tools.plugin.annotations.scanner.DefaultMojoAnnotationsScanner</implementation>
+      <description />
+      <isolated-realm>false</isolated-realm>
+    </component>
+    <component>
+      <role>org.apache.maven.tools.plugin.extractor.MojoDescriptorExtractor</role>
+      <role-hint>java-annotations</role-hint>
+      <implementation>org.apache.maven.tools.plugin.annotations.JavaAnnotationsMojoDescriptorExtractor</implementation>
+      <description />
+      <isolated-realm>false</isolated-realm>
+      <requirements>
+        <requirement>
+          <role>org.apache.maven.tools.plugin.annotations.scanner.MojoAnnotationsScanner</role>
+          <role-hint />
+          <field-name>mojoAnnotationsScanner</field-name>
+        </requirement>
+        <requirement>
+          <role>org.apache.maven.artifact.resolver.ArtifactResolver</role>
+          <role-hint />
+          <field-name>artifactResolver</field-name>
+        </requirement>
+        <requirement>
+          <role>org.apache.maven.artifact.factory.ArtifactFactory</role>
+          <role-hint />
+          <field-name>artifactFactory</field-name>
+        </requirement>
+        <requirement>
+          <role>org.codehaus.plexus.archiver.manager.ArchiverManager</role>
+          <role-hint />
+          <field-name>archiverManager</field-name>
+        </requirement>
+      </requirements>
+    </component>
+  </components>
+</component-set>
+

Added: trunk/maven-plugin-tools/debian/components-tools-ant.xml
===================================================================
--- trunk/maven-plugin-tools/debian/components-tools-ant.xml	                        (rev 0)
+++ trunk/maven-plugin-tools/debian/components-tools-ant.xml	2013-11-04 16:56:42 UTC (rev 17419)
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<component-set>
+  <components>
+    <component>
+      <role>org.apache.maven.tools.plugin.extractor.MojoDescriptorExtractor</role>
+      <role-hint>ant</role-hint>
+      <implementation>org.apache.maven.tools.plugin.extractor.ant.AntMojoDescriptorExtractor</implementation>
+      <description />
+      <isolated-realm>false</isolated-realm>
+    </component>
+  </components>
+</component-set>

Added: trunk/maven-plugin-tools/debian/components-tools-beanshell.xml
===================================================================
--- trunk/maven-plugin-tools/debian/components-tools-beanshell.xml	                        (rev 0)
+++ trunk/maven-plugin-tools/debian/components-tools-beanshell.xml	2013-11-04 16:56:42 UTC (rev 17419)
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<component-set>
+  <components>
+    <component>
+      <role>org.apache.maven.tools.plugin.extractor.MojoDescriptorExtractor</role>
+      <role-hint>bsh</role-hint>
+      <implementation>org.apache.maven.tools.plugin.extractor.beanshell.BeanshellMojoDescriptorExtractor</implementation>
+      <description />
+      <isolated-realm>false</isolated-realm>
+    </component>
+  </components>
+</component-set>
+

Added: trunk/maven-plugin-tools/debian/components-tools-java.xml
===================================================================
--- trunk/maven-plugin-tools/debian/components-tools-java.xml	                        (rev 0)
+++ trunk/maven-plugin-tools/debian/components-tools-java.xml	2013-11-04 16:56:42 UTC (rev 17419)
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<component-set>
+  <components>
+    <component>
+      <role>org.apache.maven.tools.plugin.extractor.MojoDescriptorExtractor</role>
+      <role-hint>java</role-hint>
+      <implementation>org.apache.maven.tools.plugin.extractor.java.JavaMojoDescriptorExtractor</implementation>
+      <description />
+      <isolated-realm>false</isolated-realm>
+    </component>
+  </components>
+</component-set>

Modified: trunk/maven-plugin-tools/debian/control
===================================================================
--- trunk/maven-plugin-tools/debian/control	2013-11-04 16:44:59 UTC (rev 17418)
+++ trunk/maven-plugin-tools/debian/control	2013-11-04 16:56:42 UTC (rev 17419)
@@ -9,13 +9,17 @@
                      ant-optional,
                      bsh,
                      junit,
+                     libasm3-java,
                      libclassworlds-java,
                      libdoxia-sitetools-java,
                      libguava-java,
                      libjtidy-java,
                      libmaven-reporting-impl-java,
-                     libmaven2-core-java,
+                     libmaven2-core-java (>= 2.2.1-12),
                      libmodello-java,
+                     libplexus-ant-factory-java,
+                     libplexus-bsh-factory-java,
+                     libplexus-containers1.5-java,
                      libplexus-container-default-java,
                      libplexus-velocity-java,
                      libqdox-java,
@@ -23,10 +27,10 @@
                      maven-ant-helper (>= 7.8),
                      maven-repo-helper,
                      velocity
-Standards-Version: 3.9.4
+Standards-Version: 3.9.5
 Vcs-Svn: svn://anonscm.debian.org/pkg-java/trunk/maven-plugin-tools
 Vcs-Browser: http://anonscm.debian.org/viewvc/pkg-java/trunk/maven-plugin-tools/
-Homepage: http://maven.apache.org
+Homepage: http://maven.apache.org/plugin-tools/
 
 Package: libmaven-plugin-tools-java
 Architecture: all

Modified: trunk/maven-plugin-tools/debian/libmaven-plugin-tools-java.poms
===================================================================
--- trunk/maven-plugin-tools/debian/libmaven-plugin-tools-java.poms	2013-11-04 16:44:59 UTC (rev 17418)
+++ trunk/maven-plugin-tools/debian/libmaven-plugin-tools-java.poms	2013-11-04 16:56:42 UTC (rev 17419)
@@ -1,8 +1,14 @@
-pom.xml --no-parent
-maven-plugin-plugin/pom.xml --no-parent
-maven-plugin-tools-ant/pom.xml
-maven-plugin-tools-api/pom.xml
-maven-plugin-tools-model/pom.xml
-maven-plugin-tools-beanshell/pom.xml
-maven-plugin-tools-java/pom.xml
-maven-plugin-tools-javadoc/pom.xml
+pom.xml --no-parent --has-package-version
+maven-plugin-annotations/pom.xml --has-package-version
+maven-plugin-plugin/pom.xml --no-parent --has-package-version
+maven-plugin-tools-annotations/pom.xml --has-package-version
+maven-plugin-tools-ant/pom.xml --has-package-version
+maven-plugin-tools-api/pom.xml --has-package-version
+maven-plugin-tools-model/pom.xml --has-package-version
+maven-plugin-tools-beanshell/pom.xml --has-package-version
+maven-plugin-tools-generators/pom.xml --has-package-version
+maven-plugin-tools-java/pom.xml --has-package-version
+maven-plugin-tools-javadoc/pom.xml --has-package-version
+maven-script/pom.xml --has-package-version
+maven-script/maven-script-ant/pom.xml --has-package-version
+maven-script/maven-script-beanshell/pom.xml --has-package-version

Modified: trunk/maven-plugin-tools/debian/maven.rules
===================================================================
--- trunk/maven-plugin-tools/debian/maven.rules	2013-11-04 16:44:59 UTC (rev 17418)
+++ trunk/maven-plugin-tools/debian/maven.rules	2013-11-04 16:56:42 UTC (rev 17419)
@@ -4,3 +4,6 @@
 * * maven-plugin *
 org.codehaus.plexus plexus-container-default jar s/1\.0-alpha.*/1.0-alpha/
 junit junit jar s/3\..*/3.x/
+asm * * s/.*/3.x/
+org.apache.maven maven-artifact * s/3\..*/3.x/
+s/bsh/org.beanshell/ bsh * s/.*/debian/

Added: trunk/maven-plugin-tools/debian/patches/01-maven2-api-compatibility.patch
===================================================================
--- trunk/maven-plugin-tools/debian/patches/01-maven2-api-compatibility.patch	                        (rev 0)
+++ trunk/maven-plugin-tools/debian/patches/01-maven2-api-compatibility.patch	2013-11-04 16:56:42 UTC (rev 17419)
@@ -0,0 +1,25 @@
+Description: ResolutionScope uses constant values from the Artifact class that
+ only exist in Maven 3. This patches replaces them with the equivalent
+ literals to preserve the compatibility with Maven 2.
+Author: Emmanuel Bourg <ebourg at apache.org>
+Forwarded: not-needed
+--- a/maven-plugin-annotations/src/main/java/org/apache/maven/plugins/annotations/ResolutionScope.java
++++ b/maven-plugin-annotations/src/main/java/org/apache/maven/plugins/annotations/ResolutionScope.java
+@@ -43,7 +43,7 @@
+      * <code>compile+runtime</code> resolution scope (Maven 3 only)
+      * = <code>compile</code> + <code>system</code> + <code>provided</code> + <code>runtime</code> dependencies
+      */
+-    COMPILE_PLUS_RUNTIME( Artifact.SCOPE_COMPILE_PLUS_RUNTIME ),
++    COMPILE_PLUS_RUNTIME( "compile+runtime" ),
+     /**
+      * <code>runtime</code> resolution scope
+      * = <code>compile</code> + <code>runtime</code> dependencies
+@@ -53,7 +53,7 @@
+      * <code>runtime+system</code> resolution scope (Maven 3 only)
+      * = <code>compile</code> + <code>system</code> + <code>runtime</code> dependencies
+      */
+-    RUNTIME_PLUS_SYSTEM( Artifact.SCOPE_RUNTIME_PLUS_SYSTEM ),
++    RUNTIME_PLUS_SYSTEM( "runtime+system" ),
+     /**
+      * <code>test</code> resolution scope
+      * = <code>compile</code> + <code>system</code> + <code>provided</code> + <code>runtime</code> + <code>test</code>

Added: trunk/maven-plugin-tools/debian/patches/02-plexus-archiver1-compatibility.patch
===================================================================
--- trunk/maven-plugin-tools/debian/patches/02-plexus-archiver1-compatibility.patch	                        (rev 0)
+++ trunk/maven-plugin-tools/debian/patches/02-plexus-archiver1-compatibility.patch	2013-11-04 16:56:42 UTC (rev 17419)
@@ -0,0 +1,18 @@
+Description: ArchiverException became and unchecked exception in the version 2.0
+ of plexus-archiver. For now Debian has an earlier version of plexus-archiver
+ and the exception has to be catched explicitely.
+Author: Emmanuel Bourg <ebourg at apache.org>
+Forwarded: not-needed
+--- a/maven-plugin-tools-annotations/src/main/java/org/apache/maven/tools/plugin/annotations/JavaAnnotationsMojoDescriptorExtractor.java
++++ b/maven-plugin-tools-annotations/src/main/java/org/apache/maven/tools/plugin/annotations/JavaAnnotationsMojoDescriptorExtractor.java
+@@ -233,6 +233,10 @@
+ 
+             return discoverClasses( request.getEncoding(), Arrays.asList( extractDirectory ) );
+         }
++        catch ( org.codehaus.plexus.archiver.ArchiverException e )
++        {
++            throw new ExtractionException( e.getMessage(), e );
++        }
+         catch ( ArtifactResolutionException e )
+         {
+             throw new ExtractionException( e.getMessage(), e );

Added: trunk/maven-plugin-tools/debian/patches/03-plexus-utils2-compatibility.patch
===================================================================
--- trunk/maven-plugin-tools/debian/patches/03-plexus-utils2-compatibility.patch	                        (rev 0)
+++ trunk/maven-plugin-tools/debian/patches/03-plexus-utils2-compatibility.patch	2013-11-04 16:56:42 UTC (rev 17419)
@@ -0,0 +1,16 @@
+Description: FileUtils.fileWrite(File, String, String) was introduced in
+ plexus-utils 2.0.6 but this version isn't available in Debian yet. So we fall
+ back to FileUtils.fileWrite(String, String, String)
+Author: Emmanuel Bourg <ebourg at apache.org>
+Forwarded: not-needed
+--- a/maven-plugin-tools-generators/src/main/java/org/apache/maven/tools/plugin/generator/PluginHelpGenerator.java
++++ b/maven-plugin-tools-generators/src/main/java/org/apache/maven/tools/plugin/generator/PluginHelpGenerator.java
+@@ -149,7 +149,7 @@
+ 
+             String helpClassSources = getHelpClassSources( getPluginHelpPath( request.getProject() ), pluginDescriptor );
+ 
+-            FileUtils.fileWrite( helpClass, request.getEncoding(), helpClassSources );
++            FileUtils.fileWrite( helpClass.getAbsolutePath(), request.getEncoding(), helpClassSources );
+         }
+         catch ( IOException e )
+         {

Added: trunk/maven-plugin-tools/debian/patches/series
===================================================================
--- trunk/maven-plugin-tools/debian/patches/series	                        (rev 0)
+++ trunk/maven-plugin-tools/debian/patches/series	2013-11-04 16:56:42 UTC (rev 17419)
@@ -0,0 +1,3 @@
+01-maven2-api-compatibility.patch
+02-plexus-archiver1-compatibility.patch
+03-plexus-utils2-compatibility.patch

Modified: trunk/maven-plugin-tools/debian/plugin.xml
===================================================================
--- trunk/maven-plugin-tools/debian/plugin.xml	2013-11-04 16:44:59 UTC (rev 17418)
+++ trunk/maven-plugin-tools/debian/plugin.xml	2013-11-04 16:56:42 UTC (rev 17419)
@@ -1,715 +1,1114 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- dummy plugin descriptor used to bootstrap -->
-<plugin>
+
+<!-- Generated by maven-plugin-tools 3.1 on 2012-11-07 -->
+
+<plugin>
+  <name>Maven Plugin Plugin</name>
   <description>The Plugin Plugin is used to create a Maven plugin descriptor for any Mojo's found in the source tree,
     to include in the JAR. It is also used to generate Xdoc files for the Mojos as well as for updating the
-    plugin registry, the artifact metadata and a generic help goal.</description>
-  <groupId>org.apache.maven.plugins</groupId>
-  <artifactId>maven-plugin-plugin</artifactId>
-  <version>@VERSION@</version>
-  <goalPrefix>plugin</goalPrefix>
-  <isolatedRealm>false</isolatedRealm>
-  <inheritedByDefault>true</inheritedByDefault>
-  <mojos>
-    <mojo>
-      <goal>helpmojo</goal>
-      <description>Generates a <code>HelpMojo</code> class.</description>
-      <requiresDirectInvocation>false</requiresDirectInvocation>
-      <requiresProject>true</requiresProject>
-      <requiresReports>false</requiresReports>
-      <aggregator>false</aggregator>
-      <requiresOnline>false</requiresOnline>
-      <inheritedByDefault>true</inheritedByDefault>
-      <phase>generate-sources</phase>
-      <implementation>org.apache.maven.plugin.plugin.HelpGeneratorMojo</implementation>
-      <language>java</language>
-      <instantiationStrategy>per-lookup</instantiationStrategy>
-      <executionStrategy>once-per-session</executionStrategy>
-      <parameters>
-        <parameter>
-          <name>extractors</name>
-          <type>java.util.Set</type>
-          <required>false</required>
-          <editable>true</editable>
-          <description>The names of extractors to use.
+    plugin registry, the artifact metadata and a generic help goal.</description>
+  <groupId>org.apache.maven.plugins</groupId>
+  <artifactId>maven-plugin-plugin</artifactId>
+  <version>3.2</version>
+  <goalPrefix>plugin</goalPrefix>
+  <isolatedRealm>false</isolatedRealm>
+  <inheritedByDefault>true</inheritedByDefault>
+  <mojos>
+    <mojo>
+      <goal>help</goal>
+      <description>Display help information on maven-plugin-plugin.<br/>
+Call <code>mvn plugin:help -Ddetail=true -Dgoal=&lt;goal-name&gt;</code> to display parameter details.</description>
+      <requiresDirectInvocation>false</requiresDirectInvocation>
+      <requiresProject>false</requiresProject>
+      <requiresReports>false</requiresReports>
+      <aggregator>false</aggregator>
+      <requiresOnline>false</requiresOnline>
+      <inheritedByDefault>true</inheritedByDefault>
+      <implementation>org.apache.maven.plugin.plugin.HelpMojo</implementation>
+      <language>java</language>
+      <instantiationStrategy>per-lookup</instantiationStrategy>
+      <executionStrategy>once-per-session</executionStrategy>
+      <threadSafe>true</threadSafe>
+      <parameters>
+        <parameter>
+          <name>detail</name>
+          <type>boolean</type>
+          <required>false</required>
+          <editable>true</editable>
+          <description>If <code>true</code>, display all settable properties for each goal.</description>
+        </parameter>
+        <parameter>
+          <name>goal</name>
+          <type>java.lang.String</type>
+          <required>false</required>
+          <editable>true</editable>
+          <description>The name of the goal for which to show help. If unspecified, all goals will be displayed.</description>
+        </parameter>
+        <parameter>
+          <name>indentSize</name>
+          <type>int</type>
+          <required>false</required>
+          <editable>true</editable>
+          <description>The number of spaces per indentation level, should be positive.</description>
+        </parameter>
+        <parameter>
+          <name>lineLength</name>
+          <type>int</type>
+          <required>false</required>
+          <editable>true</editable>
+          <description>The maximum length of a display line, should be positive.</description>
+        </parameter>
+      </parameters>
+      <configuration>
+        <detail implementation="boolean" default-value="false">${detail}</detail>
+        <goal implementation="java.lang.String">${goal}</goal>
+        <indentSize implementation="int" default-value="2">${indentSize}</indentSize>
+        <lineLength implementation="int" default-value="80">${lineLength}</lineLength>
+      </configuration>
+    </mojo>
+    <mojo>
+      <goal>addPluginArtifactMetadata</goal>
+      <description>Inject any plugin-specific
+<a href="/ref/current/maven-repository-metadata/repository-metadata.html">artifact metadata</a> to the project's
+artifact, for subsequent installation and deployment.
+It is used:
+<ol>
+<li>to add the <code>latest</code> metadata (which is plugin-specific) for shipping alongside the plugin's artifact</li>
+<li>to define plugin mapping in the group</li>
+</ol></description>
+      <requiresDirectInvocation>false</requiresDirectInvocation>
+      <requiresProject>true</requiresProject>
+      <requiresReports>false</requiresReports>
+      <aggregator>false</aggregator>
+      <requiresOnline>false</requiresOnline>
+      <inheritedByDefault>true</inheritedByDefault>
+      <phase>package</phase>
+      <implementation>org.apache.maven.plugin.plugin.metadata.AddPluginArtifactMetadataMojo</implementation>
+      <language>java</language>
+      <instantiationStrategy>per-lookup</instantiationStrategy>
+      <executionStrategy>once-per-session</executionStrategy>
+      <since>2.0</since>
+      <threadSafe>true</threadSafe>
+      <parameters>
+        <parameter>
+          <name>goalPrefix</name>
+          <type>java.lang.String</type>
+          <required>false</required>
+          <editable>true</editable>
+          <description>The prefix for the plugin goal.</description>
+        </parameter>
+        <parameter>
+          <name>skip</name>
+          <type>boolean</type>
+          <since>2.8</since>
+          <required>false</required>
+          <editable>true</editable>
+          <description>Set this to "true" to skip invoking any goals or reports of the plugin.</description>
+        </parameter>
+        <parameter>
+          <name>project</name>
+          <type>org.apache.maven.project.MavenProject</type>
+          <required>true</required>
+          <editable>false</editable>
+          <description></description>
+        </parameter>
+      </parameters>
+      <configuration>
+        <skip implementation="boolean" default-value="false">${maven.plugin.skip}</skip>
+        <project implementation="org.apache.maven.project.MavenProject" default-value="${project}"/>
+      </configuration>
+    </mojo>
+    <mojo>
+      <goal>helpmojo</goal>
+      <description>Generates a <code>HelpMojo</code> class.</description>
+      <requiresDependencyResolution>compile</requiresDependencyResolution>
+      <requiresDirectInvocation>false</requiresDirectInvocation>
+      <requiresProject>true</requiresProject>
+      <requiresReports>false</requiresReports>
+      <aggregator>false</aggregator>
+      <requiresOnline>false</requiresOnline>
+      <inheritedByDefault>true</inheritedByDefault>
+      <phase>generate-sources</phase>
+      <implementation>org.apache.maven.plugin.plugin.HelpGeneratorMojo</implementation>
+      <language>java</language>
+      <instantiationStrategy>per-lookup</instantiationStrategy>
+      <executionStrategy>once-per-session</executionStrategy>
+      <since>2.4</since>
+      <threadSafe>true</threadSafe>
+      <parameters>
+        <parameter>
+          <name>dependencies</name>
+          <type>java.util.Set</type>
+          <since>3.0</since>
+          <required>true</required>
+          <editable>false</editable>
+          <description>The set of dependencies for the current project</description>
+        </parameter>
+        <parameter>
+          <name>encoding</name>
+          <type>java.lang.String</type>
+          <since>2.5</since>
+          <required>false</required>
+          <editable>true</editable>
+          <description>The file encoding of the source files.</description>
+        </parameter>
+        <parameter>
+          <name>extractors</name>
+          <type>java.util.Set</type>
+          <required>false</required>
+          <editable>true</editable>
+          <description>The role names of mojo extractors to use.
 <p/>
-If not set, all extractors will be used. If set to an empty extractor name, no extractors
+If not set, all mojo extractors will be used. If set to an empty extractor name, no mojo extractors
 will be used.
 <p/>
 Example:
 <p/>
 <pre>
-&lt;!-- Use all extractors --&gt;
-&lt;extractors/&gt;
-&lt;!-- Use no extractors --&gt;
-&lt;extractors&gt;
-&lt;extractor/&gt;
-&lt;/extractors&gt;
-&lt;!-- Use only bsh extractor --&gt;
-&lt;extractors&gt;
-&lt;extractor&gt;bsh&lt;/extractor&gt;
-&lt;/extractors&gt;
-</pre></description>
-        </parameter>
-        <parameter>
-          <name>goalPrefix</name>
-          <type>java.lang.String</type>
-          <required>false</required>
-          <editable>true</editable>
-          <description>The goal prefix that will appear before the ":".</description>
-        </parameter>
-        <parameter>
-          <name>outputDirectory</name>
-          <type>java.io.File</type>
-          <required>false</required>
-          <editable>true</editable>
-          <description>The directory where the generated <code>HelpMojo</code> file will be put.</description>
-        </parameter>
-        <parameter>
-          <name>project</name>
-          <type>org.apache.maven.project.MavenProject</type>
-          <required>true</required>
-          <editable>false</editable>
-          <description>The project currently being built.</description>
-        </parameter>
-      </parameters>
-      <configuration>
-        <outputDirectory implementation="java.io.File" default-value="${project.build.directory}/generated-sources/plugin"/>
-        <project implementation="org.apache.maven.project.MavenProject">${project}</project>
-      </configuration>
-      <requirements>
-        <requirement>
-          <role>org.apache.maven.tools.plugin.scanner.MojoScanner</role>
-          <field-name>mojoScanner</field-name>
-        </requirement>
-      </requirements>
-    </mojo>
-    <mojo>
-      <goal>xdoc</goal>
-      <description>Generate Xdoc files for the project mojos or goals.</description>
-      <requiresDirectInvocation>false</requiresDirectInvocation>
-      <requiresProject>true</requiresProject>
-      <requiresReports>false</requiresReports>
-      <aggregator>false</aggregator>
-      <requiresOnline>false</requiresOnline>
-      <inheritedByDefault>true</inheritedByDefault>
-      <implementation>org.apache.maven.plugin.plugin.XdocGeneratorMojo</implementation>
-      <language>java</language>
-      <instantiationStrategy>per-lookup</instantiationStrategy>
-      <executionStrategy>once-per-session</executionStrategy>
-      <parameters>
-        <parameter>
-          <name>extractors</name>
-          <type>java.util.Set</type>
-          <required>false</required>
-          <editable>true</editable>
-          <description>The names of extractors to use.
+ &lt;!-- Use all mojo extractors --&gt;
+ &lt;extractors/&gt;
+
+ &lt;!-- Use no mojo extractors --&gt;
+ &lt;extractors&gt;
+     &lt;extractor/&gt;
+ &lt;/extractors&gt;
+
+ &lt;!-- Use only bsh mojo extractor --&gt;
+ &lt;extractors&gt;
+     &lt;extractor&gt;bsh&lt;/extractor&gt;
+ &lt;/extractors&gt;
+</pre></description>
+        </parameter>
+        <parameter>
+          <name>goalPrefix</name>
+          <type>java.lang.String</type>
+          <required>false</required>
+          <editable>true</editable>
+          <description>The goal prefix that will appear before the ":".</description>
+        </parameter>
+        <parameter>
+          <name>helpPackageName</name>
+          <type>java.lang.String</type>
+          <since>2.6</since>
+          <required>false</required>
+          <editable>true</editable>
+          <description>The name of the package for the generated <code>HelpMojo</code>. By default, the package will be calculated based
+on the packages of the other plugin goals.</description>
+        </parameter>
+        <parameter>
+          <name>local</name>
+          <type>org.apache.maven.artifact.repository.ArtifactRepository</type>
+          <since>3.0</since>
+          <required>true</required>
+          <editable>false</editable>
+          <description>Location of the local repository.</description>
+        </parameter>
+        <parameter>
+          <name>outputDirectory</name>
+          <type>java.io.File</type>
+          <required>false</required>
+          <editable>true</editable>
+          <description>The directory where the generated <code>HelpMojo</code> file will be put.</description>
+        </parameter>
+        <parameter>
+          <name>remoteRepos</name>
+          <type>java.util.List</type>
+          <since>3.0</since>
+          <required>true</required>
+          <editable>false</editable>
+          <description>List of Remote Repositories used by the resolver</description>
+        </parameter>
+        <parameter>
+          <name>skip</name>
+          <type>boolean</type>
+          <since>2.8</since>
+          <required>false</required>
+          <editable>true</editable>
+          <description>Set this to "true" to skip invoking any goals or reports of the plugin.</description>
+        </parameter>
+        <parameter>
+          <name>skipErrorNoDescriptorsFound</name>
+          <type>boolean</type>
+          <since>3.0</since>
+          <required>false</required>
+          <editable>true</editable>
+          <description>By default an exception is throw if no mojo descriptor is found. As the maven-plugin is defined in core, the
+descriptor generator mojo is bound to generate-resources phase.
+But for annotations, the compiled classes are needed, so skip error</description>
+        </parameter>
+        <parameter>
+          <name>project</name>
+          <type>org.apache.maven.project.MavenProject</type>
+          <required>true</required>
+          <editable>false</editable>
+          <description></description>
+        </parameter>
+      </parameters>
+      <configuration>
+        <dependencies implementation="java.util.Set" default-value="${project.artifacts}"/>
+        <encoding implementation="java.lang.String" default-value="${project.build.sourceEncoding}">${encoding}</encoding>
+        <local implementation="org.apache.maven.artifact.repository.ArtifactRepository" default-value="${localRepository}"/>
+        <outputDirectory implementation="java.io.File" default-value="${project.build.directory}/generated-sources/plugin"/>
+        <remoteRepos implementation="java.util.List" default-value="${project.remoteArtifactRepositories}"/>
+        <skip implementation="boolean" default-value="false">${maven.plugin.skip}</skip>
+        <skipErrorNoDescriptorsFound implementation="boolean" default-value="false">${maven.plugin.skipErrorNoDescriptorsFound}</skipErrorNoDescriptorsFound>
+        <project implementation="org.apache.maven.project.MavenProject" default-value="${project}"/>
+      </configuration>
+      <requirements>
+        <requirement>
+          <role>org.apache.maven.tools.plugin.scanner.MojoScanner</role>
+          <field-name>mojoScanner</field-name>
+        </requirement>
+        <requirement>
+          <role>org.codehaus.plexus.velocity.VelocityComponent</role>
+          <field-name>velocity</field-name>
+        </requirement>
+      </requirements>
+    </mojo>
+    <mojo>
+      <goal>updateRegistry</goal>
+      <description>Update the user plugin registry (if it's in use) to reflect the version we're installing.</description>
+      <requiresDirectInvocation>false</requiresDirectInvocation>
+      <requiresProject>true</requiresProject>
+      <requiresReports>false</requiresReports>
+      <aggregator>false</aggregator>
+      <requiresOnline>false</requiresOnline>
+      <inheritedByDefault>true</inheritedByDefault>
+      <phase>install</phase>
+      <implementation>org.apache.maven.plugin.plugin.UpdatePluginRegistryMojo</implementation>
+      <language>java</language>
+      <instantiationStrategy>per-lookup</instantiationStrategy>
+      <executionStrategy>once-per-session</executionStrategy>
+      <since>2.0</since>
+      <threadSafe>true</threadSafe>
+      <parameters>
+        <parameter>
+          <name>artifactId</name>
+          <type>java.lang.String</type>
+          <required>true</required>
+          <editable>false</editable>
+          <description>The artifact id of the project currently being built.</description>
+        </parameter>
+        <parameter>
+          <name>groupId</name>
+          <type>java.lang.String</type>
+          <required>true</required>
+          <editable>false</editable>
+          <description>The group id of the project currently being built.</description>
+        </parameter>
+        <parameter>
+          <name>skip</name>
+          <type>boolean</type>
+          <since>2.8</since>
+          <required>false</required>
+          <editable>true</editable>
+          <description>Set this to "true" to skip invoking any goals or reports of the plugin.</description>
+        </parameter>
+        <parameter>
+          <name>skipUpdatePluginRegistry</name>
+          <type>boolean</type>
+          <since>2.8</since>
+          <required>false</required>
+          <editable>true</editable>
+          <description>Set this to "true" to skip updating the plugin registry.</description>
+        </parameter>
+        <parameter>
+          <name>usePluginRegistry</name>
+          <type>boolean</type>
+          <required>true</required>
+          <editable>false</editable>
+          <description>Indicates whether the <code>plugin-registry.xml</code> file is used by Maven or not to manage plugin versions.</description>
+        </parameter>
+        <parameter>
+          <name>version</name>
+          <type>java.lang.String</type>
+          <required>true</required>
+          <editable>false</editable>
+          <description>The version of the project currently being built.</description>
+        </parameter>
+      </parameters>
+      <configuration>
+        <artifactId implementation="java.lang.String" default-value="${project.artifactId}"/>
+        <groupId implementation="java.lang.String" default-value="${project.groupId}"/>
+        <skip implementation="boolean" default-value="false">${maven.plugin.skip}</skip>
+        <skipUpdatePluginRegistry implementation="boolean" default-value="false">${maven.plugin.update.registry.skip}</skipUpdatePluginRegistry>
+        <usePluginRegistry implementation="boolean" default-value="${settings.usePluginRegistry}"/>
+        <version implementation="java.lang.String" default-value="${project.artifact.version}"/>
+      </configuration>
+      <requirements>
+        <requirement>
+          <role>org.apache.maven.plugin.registry.MavenPluginRegistryBuilder</role>
+          <field-name>pluginRegistryBuilder</field-name>
+        </requirement>
+      </requirements>
+    </mojo>
+    <mojo>
+      <goal>xdoc</goal>
+      <description>Generate Xdoc files for the project mojos or goals.</description>
+      <requiresDirectInvocation>false</requiresDirectInvocation>
+      <requiresProject>true</requiresProject>
+      <requiresReports>false</requiresReports>
+      <aggregator>false</aggregator>
+      <requiresOnline>false</requiresOnline>
+      <inheritedByDefault>true</inheritedByDefault>
+      <implementation>org.apache.maven.plugin.plugin.XdocGeneratorMojo</implementation>
+      <language>java</language>
+      <instantiationStrategy>per-lookup</instantiationStrategy>
+      <executionStrategy>once-per-session</executionStrategy>
+      <since>2.0</since>
+      <threadSafe>true</threadSafe>
+      <parameters>
+        <parameter>
+          <name>dependencies</name>
+          <type>java.util.Set</type>
+          <since>3.0</since>
+          <required>true</required>
+          <editable>false</editable>
+          <description>The set of dependencies for the current project</description>
+        </parameter>
+        <parameter>
+          <name>encoding</name>
+          <type>java.lang.String</type>
+          <since>2.5</since>
+          <required>false</required>
+          <editable>true</editable>
+          <description>The file encoding of the source files.</description>
+        </parameter>
+        <parameter>
+          <name>extractors</name>
+          <type>java.util.Set</type>
+          <required>false</required>
+          <editable>true</editable>
+          <description>The role names of mojo extractors to use.
 <p/>
-If not set, all extractors will be used. If set to an empty extractor name, no extractors
+If not set, all mojo extractors will be used. If set to an empty extractor name, no mojo extractors
 will be used.
 <p/>
 Example:
 <p/>
 <pre>
-&lt;!-- Use all extractors --&gt;
-&lt;extractors/&gt;
-&lt;!-- Use no extractors --&gt;
-&lt;extractors&gt;
-&lt;extractor/&gt;
-&lt;/extractors&gt;
-&lt;!-- Use only bsh extractor --&gt;
-&lt;extractors&gt;
-&lt;extractor&gt;bsh&lt;/extractor&gt;
-&lt;/extractors&gt;
-</pre></description>
-        </parameter>
-        <parameter>
-          <name>goalPrefix</name>
-          <type>java.lang.String</type>
-          <required>false</required>
-          <editable>true</editable>
-          <description>The goal prefix that will appear before the ":".</description>
-        </parameter>
-        <parameter>
-          <name>outputDirectory</name>
-          <type>java.io.File</type>
-          <required>false</required>
-          <editable>true</editable>
-          <description>The directory where the generated Xdoc files will be put.</description>
-        </parameter>
-        <parameter>
-          <name>project</name>
-          <type>org.apache.maven.project.MavenProject</type>
-          <required>true</required>
-          <editable>false</editable>
-          <description>The project currently being built.</description>
-        </parameter>
-      </parameters>
-      <configuration>
-        <outputDirectory implementation="java.io.File" default-value="${project.build.directory}/generated-site/xdoc"/>
-        <project implementation="org.apache.maven.project.MavenProject">${project}</project>
-      </configuration>
-      <requirements>
-        <requirement>
-          <role>org.apache.maven.tools.plugin.scanner.MojoScanner</role>
-          <field-name>mojoScanner</field-name>
-        </requirement>
-      </requirements>
-    </mojo>
-    <mojo>
-      <goal>updateRegistry</goal>
-      <description>Update the user plugin registry (if it's in use) to reflect the version we're installing.</description>
-      <requiresDirectInvocation>false</requiresDirectInvocation>
-      <requiresProject>true</requiresProject>
-      <requiresReports>false</requiresReports>
-      <aggregator>false</aggregator>
-      <requiresOnline>false</requiresOnline>
-      <inheritedByDefault>true</inheritedByDefault>
-      <phase>install</phase>
-      <implementation>org.apache.maven.plugin.plugin.UpdatePluginRegistryMojo</implementation>
-      <language>java</language>
-      <instantiationStrategy>per-lookup</instantiationStrategy>
-      <executionStrategy>once-per-session</executionStrategy>
-      <parameters>
-        <parameter>
-          <name>artifactId</name>
-          <type>java.lang.String</type>
-          <required>true</required>
-          <editable>false</editable>
-          <description>The artifact id of the project currently being built.</description>
-        </parameter>
-        <parameter>
-          <name>groupId</name>
-          <type>java.lang.String</type>
-          <required>true</required>
-          <editable>false</editable>
-          <description>The group id of the project currently being built.</description>
-        </parameter>
-        <parameter>
-          <name>usePluginRegistry</name>
-          <type>boolean</type>
-          <required>true</required>
-          <editable>false</editable>
-          <description>Indicates whether the <code>plugin-registry.xml</code> file is used by Maven or not
-to manage plugin versions.</description>
-        </parameter>
-        <parameter>
-          <name>version</name>
-          <type>java.lang.String</type>
-          <required>true</required>
-          <editable>false</editable>
-          <description>The version of the project currently being built.</description>
-        </parameter>
-      </parameters>
-      <configuration>
-        <groupId implementation="java.lang.String" default-value="${project.groupId}"/>
-        <usePluginRegistry implementation="boolean" default-value="${settings.usePluginRegistry}"/>
-        <version implementation="java.lang.String" default-value="${project.artifact.version}"/>
-        <artifactId implementation="java.lang.String" default-value="${project.artifactId}"/>
-      </configuration>
-      <requirements>
-        <requirement>
-          <role>org.apache.maven.plugin.registry.MavenPluginRegistryBuilder</role>
-          <field-name>pluginRegistryBuilder</field-name>
-        </requirement>
-      </requirements>
-    </mojo>
-    <mojo>
-      <goal>report</goal>
-      <description>Generates the Plugin's documentation report.</description>
-      <requiresDirectInvocation>false</requiresDirectInvocation>
-      <requiresProject>true</requiresProject>
-      <requiresReports>false</requiresReports>
-      <aggregator>false</aggregator>
-      <requiresOnline>false</requiresOnline>
-      <inheritedByDefault>true</inheritedByDefault>
-      <executePhase>compile</executePhase>
-      <implementation>org.apache.maven.plugin.plugin.PluginReport</implementation>
-      <language>java</language>
-      <instantiationStrategy>per-lookup</instantiationStrategy>
-      <executionStrategy>once-per-session</executionStrategy>
-      <parameters>
-        <parameter>
-          <name>goalPrefix</name>
-          <type>java.lang.String</type>
-          <required>false</required>
-          <editable>true</editable>
-          <description>The goal prefix that will appear before the ":".</description>
-        </parameter>
-        <parameter>
-          <name>outputDirectory</name>
-          <type>java.io.File</type>
-          <required>false</required>
-          <editable>true</editable>
-          <description>Report output directory.</description>
-        </parameter>
-        <parameter>
-          <name>project</name>
-          <type>org.apache.maven.project.MavenProject</type>
-          <required>true</required>
-          <editable>false</editable>
-          <description>The Maven Project.</description>
-        </parameter>
-        <parameter>
-          <name>requirements</name>
-          <type>org.apache.maven.plugin.plugin.Requirements</type>
-          <required>false</required>
-          <editable>true</editable>
+ &lt;!-- Use all mojo extractors --&gt;
+ &lt;extractors/&gt;
+
+ &lt;!-- Use no mojo extractors --&gt;
+ &lt;extractors&gt;
+     &lt;extractor/&gt;
+ &lt;/extractors&gt;
+
+ &lt;!-- Use only bsh mojo extractor --&gt;
+ &lt;extractors&gt;
+     &lt;extractor&gt;bsh&lt;/extractor&gt;
+ &lt;/extractors&gt;
+</pre></description>
+        </parameter>
+        <parameter>
+          <name>goalPrefix</name>
+          <type>java.lang.String</type>
+          <required>false</required>
+          <editable>true</editable>
+          <description>The goal prefix that will appear before the ":".</description>
+        </parameter>
+        <parameter>
+          <name>local</name>
+          <type>org.apache.maven.artifact.repository.ArtifactRepository</type>
+          <since>3.0</since>
+          <required>true</required>
+          <editable>false</editable>
+          <description>Location of the local repository.</description>
+        </parameter>
+        <parameter>
+          <name>outputDirectory</name>
+          <type>java.io.File</type>
+          <required>false</required>
+          <editable>true</editable>
+          <description>The directory where the generated Xdoc files will be put.</description>
+        </parameter>
+        <parameter>
+          <name>remoteRepos</name>
+          <type>java.util.List</type>
+          <since>3.0</since>
+          <required>true</required>
+          <editable>false</editable>
+          <description>List of Remote Repositories used by the resolver</description>
+        </parameter>
+        <parameter>
+          <name>skip</name>
+          <type>boolean</type>
+          <since>2.8</since>
+          <required>false</required>
+          <editable>true</editable>
+          <description>Set this to "true" to skip invoking any goals or reports of the plugin.</description>
+        </parameter>
+        <parameter>
+          <name>skipErrorNoDescriptorsFound</name>
+          <type>boolean</type>
+          <since>3.0</since>
+          <required>false</required>
+          <editable>true</editable>
+          <description>By default an exception is throw if no mojo descriptor is found. As the maven-plugin is defined in core, the
+descriptor generator mojo is bound to generate-resources phase.
+But for annotations, the compiled classes are needed, so skip error</description>
+        </parameter>
+        <parameter>
+          <name>project</name>
+          <type>org.apache.maven.project.MavenProject</type>
+          <required>true</required>
+          <editable>false</editable>
+          <description></description>
+        </parameter>
+      </parameters>
+      <configuration>
+        <dependencies implementation="java.util.Set" default-value="${project.artifacts}"/>
+        <encoding implementation="java.lang.String" default-value="${project.build.sourceEncoding}">${encoding}</encoding>
+        <local implementation="org.apache.maven.artifact.repository.ArtifactRepository" default-value="${localRepository}"/>
+        <outputDirectory implementation="java.io.File" default-value="${project.build.directory}/generated-site/xdoc"/>
+        <remoteRepos implementation="java.util.List" default-value="${project.remoteArtifactRepositories}"/>
+        <skip implementation="boolean" default-value="false">${maven.plugin.skip}</skip>
+        <skipErrorNoDescriptorsFound implementation="boolean" default-value="false">${maven.plugin.skipErrorNoDescriptorsFound}</skipErrorNoDescriptorsFound>
+        <project implementation="org.apache.maven.project.MavenProject" default-value="${project}"/>
+      </configuration>
+      <requirements>
+        <requirement>
+          <role>org.apache.maven.tools.plugin.scanner.MojoScanner</role>
+          <field-name>mojoScanner</field-name>
+        </requirement>
+      </requirements>
+    </mojo>
+    <mojo>
+      <goal>report</goal>
+      <description>Generates the Plugin's documentation report.</description>
+      <requiresDirectInvocation>false</requiresDirectInvocation>
+      <requiresProject>true</requiresProject>
+      <requiresReports>false</requiresReports>
+      <aggregator>false</aggregator>
+      <requiresOnline>false</requiresOnline>
+      <inheritedByDefault>true</inheritedByDefault>
+      <executePhase>process-classes</executePhase>
+      <implementation>org.apache.maven.plugin.plugin.PluginReport</implementation>
+      <language>java</language>
+      <instantiationStrategy>per-lookup</instantiationStrategy>
+      <executionStrategy>once-per-session</executionStrategy>
+      <since>2.0</since>
+      <threadSafe>true</threadSafe>
+      <parameters>
+        <parameter>
+          <name>dependencies</name>
+          <type>java.util.Set</type>
+          <since>3.0</since>
+          <required>true</required>
+          <editable>false</editable>
+          <description>The set of dependencies for the current project</description>
+        </parameter>
+        <parameter>
+          <name>encoding</name>
+          <type>java.lang.String</type>
+          <since>2.7</since>
+          <required>false</required>
+          <editable>true</editable>
+          <description>The file encoding of the source files.</description>
+        </parameter>
+        <parameter>
+          <name>goalPrefix</name>
+          <type>java.lang.String</type>
+          <since>2.4</since>
+          <required>false</required>
+          <editable>true</editable>
+          <description>The goal prefix that will appear before the ":".
+By default, this plugin applies a heuristic to derive a heuristic from
+the plugin's artifactId.
+<p/>
+It removes any occurrences of the regular expression <strong>-?maven-?</strong>,
+and then removes any occurrences of <strong>-?plugin-?</strong>.
+<p>
+For example, horsefeature-maven-plugin becomes horsefeature.
+</p>
+<p>
+(There is a special for maven-plugin-plugin; it is mapped to 'plugin'.
+</p></description>
+        </parameter>
+        <parameter>
+          <name>local</name>
+          <type>org.apache.maven.artifact.repository.ArtifactRepository</type>
+          <since>3.0</since>
+          <required>true</required>
+          <editable>false</editable>
+          <description>Location of the local repository.</description>
+        </parameter>
+        <parameter>
+          <name>outputDirectory</name>
+          <type>java.io.File</type>
+          <required>false</required>
+          <editable>true</editable>
+          <description>Report output directory.</description>
+        </parameter>
+        <parameter>
+          <name>remoteRepos</name>
+          <type>java.util.List</type>
+          <since>3.0</since>
+          <required>true</required>
+          <editable>false</editable>
+          <description>List of Remote Repositories used by the resolver</description>
+        </parameter>
+        <parameter>
+          <name>requirements</name>
+          <type>org.apache.maven.plugin.plugin.Requirements</type>
+          <required>false</required>
+          <editable>true</editable>
           <description>Specify some requirements to execute this plugin.
 Example:
 <pre>
-&lt;requirements&gt;<br/>
-&lt;maven&gt;2.0&lt;/maven&gt;<br/>
-&lt;jdk&gt;1.4&lt;/jdk&gt;<br/>
-&lt;memory&gt;256m&lt;/memory&gt;<br/>
-&lt;diskSpace&gt;1m&lt;/diskSpace&gt;<br/>
-&lt;others&gt;<br/>
-&lt;property&gt;<br/>
-&lt;name&gt;SVN&lt;/name&gt;<br/>
-&lt;value&gt;1.4.6&lt;/value&gt;<br/>
-&lt;/property&gt;<br/>
-&lt;/others&gt;<br/>
+&lt;requirements&gt;
+  &lt;maven&gt;2.0&lt;/maven&gt;
+  &lt;jdk&gt;1.4&lt;/jdk&gt;
+  &lt;memory&gt;256m&lt;/memory&gt;
+  &lt;diskSpace&gt;1m&lt;/diskSpace&gt;
+  &lt;others&gt;
+    &lt;property&gt;
+      &lt;name&gt;SVN&lt;/name&gt;
+      &lt;value&gt;1.4.6&lt;/value&gt;
+    &lt;/property&gt;
+  &lt;/others&gt;
 &lt;/requirements&gt;
-</pre></description>
-        </parameter>
-      </parameters>
-      <configuration>
-        <goalPrefix implementation="java.lang.String">${goalPrefix}</goalPrefix>
-        <outputDirectory implementation="java.io.File" default-value="${project.build.directory}/generated-site/xdoc"/>
-        <project implementation="org.apache.maven.project.MavenProject">${project}</project>
-      </configuration>
-      <requirements>
-        <requirement>
-          <role>org.apache.maven.tools.plugin.scanner.MojoScanner</role>
-          <field-name>mojoScanner</field-name>
-        </requirement>
-        <requirement>
-          <role>org.apache.maven.doxia.siterenderer.Renderer</role>
-          <field-name>siteRenderer</field-name>
-        </requirement>
-      </requirements>
-    </mojo>
-    <mojo>
-      <goal>addPluginArtifactMetadata</goal>
-      <description>Inject any plugin-specific artifact metadata to the project's artifact, for subsequent installation
-and deployment. The first use-case for this is to add the LATEST metadata (which is plugin-specific)
-for shipping alongside the plugin's artifact.</description>
-      <requiresDirectInvocation>false</requiresDirectInvocation>
-      <requiresProject>true</requiresProject>
-      <requiresReports>false</requiresReports>
-      <aggregator>false</aggregator>
-      <requiresOnline>false</requiresOnline>
-      <inheritedByDefault>true</inheritedByDefault>
-      <phase>package</phase>
-      <implementation>org.apache.maven.plugin.plugin.metadata.AddPluginArtifactMetadataMojo</implementation>
-      <language>java</language>
-      <instantiationStrategy>per-lookup</instantiationStrategy>
-      <executionStrategy>once-per-session</executionStrategy>
-      <parameters>
-        <parameter>
-          <name>goalPrefix</name>
-          <type>java.lang.String</type>
-          <required>false</required>
-          <editable>true</editable>
-          <description>The prefix for the plugin goal.</description>
-        </parameter>
-        <parameter>
-          <name>project</name>
-          <type>org.apache.maven.project.MavenProject</type>
-          <required>true</required>
-          <editable>false</editable>
-          <description>The project artifact, which should have the LATEST metadata added to it.</description>
-        </parameter>
-      </parameters>
-      <configuration>
-        <project implementation="org.apache.maven.project.MavenProject">${project}</project>
-      </configuration>
-    </mojo>
-    <mojo>
-      <goal>help</goal>
-      <description>Display help information on maven-plugin-plugin. Call <pre> mvn plugin:help -Ddetail=true -Dgoal=&lt;goal-name&gt;</pre> to display parameter details.</description>
-      <requiresDirectInvocation>false</requiresDirectInvocation>
-      <requiresProject>false</requiresProject>
-      <requiresReports>false</requiresReports>
-      <aggregator>false</aggregator>
-      <requiresOnline>false</requiresOnline>
-      <inheritedByDefault>true</inheritedByDefault>
-      <implementation>org.apache.maven.plugin.plugin.HelpMojo</implementation>
-      <language>java</language>
-      <instantiationStrategy>per-lookup</instantiationStrategy>
-      <executionStrategy>once-per-session</executionStrategy>
-      <parameters>
-        <parameter>
-          <name>detail</name>
-          <type>boolean</type>
-          <required>false</required>
-          <editable>true</editable>
-          <description>If <code>true</code>, display all settable properties for each goal.</description>
-        </parameter>
-        <parameter>
-          <name>goal</name>
-          <type>java.lang.String</type>
-          <required>false</required>
-          <editable>true</editable>
-          <description>The name of the goal for which to show help. If unspecified, all goals will be displayed.</description>
-        </parameter>
-        <parameter>
-          <name>indentSize</name>
-          <type>int</type>
-          <required>false</required>
-          <editable>true</editable>
-          <description>The number of spaces per indentation level.</description>
-        </parameter>
-        <parameter>
-          <name>lineLength</name>
-          <type>int</type>
-          <required>false</required>
-          <editable>true</editable>
-          <description>The maximum length of a display line.</description>
-        </parameter>
-      </parameters>
-      <configuration>
-        <goal implementation="java.lang.String">${goal}</goal>
-        <lineLength implementation="int" default-value="80">${lineLength}</lineLength>
-        <indentSize implementation="int" default-value="2">${indentSize}</indentSize>
-        <detail implementation="boolean" default-value="false">${detail}</detail>
-      </configuration>
-    </mojo>
-    <mojo>
-      <goal>descriptor</goal>
+</pre></description>
+        </parameter>
+        <parameter>
+          <name>skip</name>
+          <type>boolean</type>
+          <since>2.8</since>
+          <required>false</required>
+          <editable>true</editable>
+          <description>Set this to "true" to skip invoking any goals or reports of the plugin.</description>
+        </parameter>
+        <parameter>
+          <name>skipReport</name>
+          <type>boolean</type>
+          <since>2.8</since>
+          <required>false</required>
+          <editable>true</editable>
+          <description>Set this to "true" to skip generating the report.</description>
+        </parameter>
+        <parameter>
+          <name>project</name>
+          <type>org.apache.maven.project.MavenProject</type>
+          <required>true</required>
+          <editable>false</editable>
+          <description></description>
+        </parameter>
+      </parameters>
+      <configuration>
+        <dependencies implementation="java.util.Set" default-value="${project.artifacts}"/>
+        <encoding implementation="java.lang.String" default-value="${project.build.sourceEncoding}">${encoding}</encoding>
+        <goalPrefix implementation="java.lang.String">${goalPrefix}</goalPrefix>
+        <local implementation="org.apache.maven.artifact.repository.ArtifactRepository" default-value="${localRepository}"/>
+        <outputDirectory implementation="java.io.File" default-value="${project.build.directory}/generated-site/xdoc"/>
+        <remoteRepos implementation="java.util.List" default-value="${project.remoteArtifactRepositories}"/>
+        <skip implementation="boolean" default-value="false">${maven.plugin.skip}</skip>
+        <skipReport implementation="boolean" default-value="false">${maven.plugin.report.skip}</skipReport>
+        <project implementation="org.apache.maven.project.MavenProject" default-value="${project}"/>
+      </configuration>
+      <requirements>
+        <requirement>
+          <role>org.apache.maven.tools.plugin.scanner.MojoScanner</role>
+          <field-name>mojoScanner</field-name>
+        </requirement>
+        <requirement>
+          <role>org.apache.maven.doxia.siterenderer.Renderer</role>
+          <field-name>siteRenderer</field-name>
+        </requirement>
+      </requirements>
+    </mojo>
+    <mojo>
+      <goal>descriptor</goal>
       <description>Generate a plugin descriptor.
 <br/>
-<b>Note:</b> Phase is after the "compilation" of any scripts.</description>
-      <requiresDependencyResolution>runtime</requiresDependencyResolution>
-      <requiresDirectInvocation>false</requiresDirectInvocation>
-      <requiresProject>true</requiresProject>
-      <requiresReports>false</requiresReports>
-      <aggregator>false</aggregator>
-      <requiresOnline>false</requiresOnline>
-      <inheritedByDefault>true</inheritedByDefault>
-      <phase>generate-resources</phase>
-      <implementation>org.apache.maven.plugin.plugin.DescriptorGeneratorMojo</implementation>
-      <language>java</language>
-      <instantiationStrategy>per-lookup</instantiationStrategy>
-      <executionStrategy>once-per-session</executionStrategy>
-      <parameters>
-        <parameter>
-          <name>extractors</name>
-          <type>java.util.Set</type>
-          <required>false</required>
-          <editable>true</editable>
-          <description>The names of extractors to use.
+<b>Note:</b> Since 3.0, for Java 5 plugin annotations support,
+default <a href="http://maven.apache.org/ref/current/maven-core/lifecycles.html">phase</a>
+defined by this goal is after the "compilation" of any scripts. This doesn't override
+<a href="/ref/current/maven-core/default-bindings.html#Bindings_for_maven-plugin_packaging">the default binding coded
+at generate-resources phase</a> in Maven core.</description>
+      <requiresDependencyResolution>runtime</requiresDependencyResolution>
+      <requiresDirectInvocation>false</requiresDirectInvocation>
+      <requiresProject>true</requiresProject>
+      <requiresReports>false</requiresReports>
+      <aggregator>false</aggregator>
+      <requiresOnline>false</requiresOnline>
+      <inheritedByDefault>true</inheritedByDefault>
+      <phase>process-classes</phase>
+      <implementation>org.apache.maven.plugin.plugin.DescriptorGeneratorMojo</implementation>
+      <language>java</language>
+      <instantiationStrategy>per-lookup</instantiationStrategy>
+      <executionStrategy>once-per-session</executionStrategy>
+      <since>2.0</since>
+      <threadSafe>true</threadSafe>
+      <parameters>
+        <parameter>
+          <name>dependencies</name>
+          <type>java.util.Set</type>
+          <since>3.0</since>
+          <required>true</required>
+          <editable>false</editable>
+          <description>The set of dependencies for the current project</description>
+        </parameter>
+        <parameter>
+          <name>encoding</name>
+          <type>java.lang.String</type>
+          <since>2.5</since>
+          <required>false</required>
+          <editable>true</editable>
+          <description>The file encoding of the source files.</description>
+        </parameter>
+        <parameter>
+          <name>extractors</name>
+          <type>java.util.Set</type>
+          <required>false</required>
+          <editable>true</editable>
+          <description>The role names of mojo extractors to use.
 <p/>
-If not set, all extractors will be used. If set to an empty extractor name, no extractors
+If not set, all mojo extractors will be used. If set to an empty extractor name, no mojo extractors
 will be used.
 <p/>
 Example:
 <p/>
 <pre>
-&lt;!-- Use all extractors --&gt;
-&lt;extractors/&gt;
-&lt;!-- Use no extractors --&gt;
-&lt;extractors&gt;
-&lt;extractor/&gt;
-&lt;/extractors&gt;
-&lt;!-- Use only bsh extractor --&gt;
-&lt;extractors&gt;
-&lt;extractor&gt;bsh&lt;/extractor&gt;
-&lt;/extractors&gt;
-</pre></description>
-        </parameter>
-        <parameter>
-          <name>goalPrefix</name>
-          <type>java.lang.String</type>
-          <required>false</required>
-          <editable>true</editable>
-          <description>The goal prefix that will appear before the ":".</description>
-        </parameter>
-        <parameter>
-          <name>outputDirectory</name>
-          <type>java.io.File</type>
-          <required>false</required>
-          <editable>true</editable>
-          <description>The directory where the generated <code>plugin.xml</code> file will be put.</description>
-        </parameter>
-        <parameter>
-          <name>project</name>
-          <type>org.apache.maven.project.MavenProject</type>
-          <required>true</required>
-          <editable>false</editable>
-          <description>The project currently being built.</description>
-        </parameter>
-      </parameters>
-      <configuration>
-        <outputDirectory implementation="java.io.File" default-value="${project.build.outputDirectory}/META-INF/maven"/>
-        <project implementation="org.apache.maven.project.MavenProject">${project}</project>
-      </configuration>
-      <requirements>
-        <requirement>
-          <role>org.apache.maven.tools.plugin.scanner.MojoScanner</role>
-          <field-name>mojoScanner</field-name>
-        </requirement>
-      </requirements>
-    </mojo>
-  </mojos>
-  <dependencies>
-    <dependency>
-      <groupId>org.apache.maven.doxia</groupId>
-      <artifactId>doxia-sink-api</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.maven.reporting</groupId>
-      <artifactId>maven-reporting-api</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.maven.plugin-tools</groupId>
-      <artifactId>maven-plugin-tools-java</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.maven</groupId>
-      <artifactId>maven-project</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.maven</groupId>
-      <artifactId>maven-profile</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.maven</groupId>
-      <artifactId>maven-model</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>org.codehaus.plexus</groupId>
-      <artifactId>plexus-utils</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>org.codehaus.plexus</groupId>
-      <artifactId>plexus-container-default</artifactId>
-      <type>jar</type>
-      <version>1.0-alpha</version>
-    </dependency>
-    <dependency>
-      <groupId>junit</groupId>
-      <artifactId>junit</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>classworlds</groupId>
-      <artifactId>classworlds</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.maven</groupId>
-      <artifactId>maven-artifact-manager</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.maven</groupId>
-      <artifactId>maven-repository-metadata</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.maven</groupId>
-      <artifactId>maven-artifact</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.maven.wagon</groupId>
-      <artifactId>wagon-provider-api</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>com.thoughtworks.qdox</groupId>
-      <artifactId>qdox</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>ant</groupId>
-      <artifactId>ant</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.maven</groupId>
-      <artifactId>maven-plugin-descriptor</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.maven</groupId>
-      <artifactId>maven-plugin-api</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.maven.plugin-tools</groupId>
-      <artifactId>maven-plugin-tools-api</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>jtidy</groupId>
-      <artifactId>jtidy</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.maven.reporting</groupId>
-      <artifactId>maven-reporting-impl</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.maven</groupId>
-      <artifactId>maven-settings</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>commons-validator</groupId>
-      <artifactId>commons-validator</artifactId>
-      <type>jar</type>
-      <version>1.2.0</version>
-    </dependency>
-    <dependency>
-      <groupId>commons-beanutils</groupId>
-      <artifactId>commons-beanutils</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>commons-logging</groupId>
-      <artifactId>commons-logging</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>commons-digester</groupId>
-      <artifactId>commons-digester</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>commons-collections</groupId>
-      <artifactId>commons-collections</artifactId>
-      <type>jar</type>
-      <version>3.x</version>
-    </dependency>
-    <dependency>
-      <groupId>xml-apis</groupId>
-      <artifactId>xml-apis</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>oro</groupId>
-      <artifactId>oro</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.maven.doxia</groupId>
-      <artifactId>doxia-core</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.maven.doxia</groupId>
-      <artifactId>doxia-site-renderer</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>org.codehaus.plexus</groupId>
-      <artifactId>plexus-i18n</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>org.codehaus.plexus</groupId>
-      <artifactId>plexus-velocity</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.velocity</groupId>
-      <artifactId>velocity</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>commons-lang</groupId>
-      <artifactId>commons-lang</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.maven.doxia</groupId>
-      <artifactId>doxia-decoration-model</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.maven.doxia</groupId>
-      <artifactId>doxia-module-apt</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.maven.doxia</groupId>
-      <artifactId>doxia-module-fml</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.maven.doxia</groupId>
-      <artifactId>doxia-module-xdoc</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.maven.doxia</groupId>
-      <artifactId>doxia-module-xhtml</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.maven</groupId>
-      <artifactId>maven-plugin-registry</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.maven.plugin-tools</groupId>
-      <artifactId>maven-plugin-tools-beanshell</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-    <dependency>
-      <groupId>org.beanshell</groupId>
-      <artifactId>bsh</artifactId>
-      <type>jar</type>
-      <version>debian</version>
-    </dependency>
-  </dependencies>
+ &lt;!-- Use all mojo extractors --&gt;
+ &lt;extractors/&gt;
+
+ &lt;!-- Use no mojo extractors --&gt;
+ &lt;extractors&gt;
+     &lt;extractor/&gt;
+ &lt;/extractors&gt;
+
+ &lt;!-- Use only bsh mojo extractor --&gt;
+ &lt;extractors&gt;
+     &lt;extractor&gt;bsh&lt;/extractor&gt;
+ &lt;/extractors&gt;
+</pre></description>
+        </parameter>
+        <parameter>
+          <name>goalPrefix</name>
+          <type>java.lang.String</type>
+          <required>false</required>
+          <editable>true</editable>
+          <description>The goal prefix that will appear before the ":".</description>
+        </parameter>
+        <parameter>
+          <name>local</name>
+          <type>org.apache.maven.artifact.repository.ArtifactRepository</type>
+          <since>3.0</since>
+          <required>true</required>
+          <editable>false</editable>
+          <description>Location of the local repository.</description>
+        </parameter>
+        <parameter>
+          <name>outputDirectory</name>
+          <type>java.io.File</type>
+          <required>false</required>
+          <editable>true</editable>
+          <description>The directory where the generated <code>plugin.xml</code> file will be put.</description>
+        </parameter>
+        <parameter>
+          <name>remoteRepos</name>
+          <type>java.util.List</type>
+          <since>3.0</since>
+          <required>true</required>
+          <editable>false</editable>
+          <description>List of Remote Repositories used by the resolver</description>
+        </parameter>
+        <parameter>
+          <name>skip</name>
+          <type>boolean</type>
+          <since>2.8</since>
+          <required>false</required>
+          <editable>true</editable>
+          <description>Set this to "true" to skip invoking any goals or reports of the plugin.</description>
+        </parameter>
+        <parameter>
+          <name>skipDescriptor</name>
+          <type>boolean</type>
+          <since>2.6</since>
+          <required>false</required>
+          <editable>true</editable>
+          <description>A flag to disable generation of the <code>plugin.xml</code> in favor of a hand authored plugin descriptor.</description>
+        </parameter>
+        <parameter>
+          <name>skipErrorNoDescriptorsFound</name>
+          <type>boolean</type>
+          <since>3.0</since>
+          <required>false</required>
+          <editable>true</editable>
+          <description>By default an exception is throw if no mojo descriptor is found. As the maven-plugin is defined in core, the
+descriptor generator mojo is bound to generate-resources phase.
+But for annotations, the compiled classes are needed, so skip error</description>
+        </parameter>
+        <parameter>
+          <name>project</name>
+          <type>org.apache.maven.project.MavenProject</type>
+          <required>true</required>
+          <editable>false</editable>
+          <description></description>
+        </parameter>
+      </parameters>
+      <configuration>
+        <dependencies implementation="java.util.Set" default-value="${project.artifacts}"/>
+        <encoding implementation="java.lang.String" default-value="${project.build.sourceEncoding}">${encoding}</encoding>
+        <local implementation="org.apache.maven.artifact.repository.ArtifactRepository" default-value="${localRepository}"/>
+        <outputDirectory implementation="java.io.File" default-value="${project.build.outputDirectory}/META-INF/maven"/>
+        <remoteRepos implementation="java.util.List" default-value="${project.remoteArtifactRepositories}"/>
+        <skip implementation="boolean" default-value="false">${maven.plugin.skip}</skip>
+        <skipDescriptor implementation="boolean" default-value="false"/>
+        <skipErrorNoDescriptorsFound implementation="boolean" default-value="false">${maven.plugin.skipErrorNoDescriptorsFound}</skipErrorNoDescriptorsFound>
+        <project implementation="org.apache.maven.project.MavenProject" default-value="${project}"/>
+      </configuration>
+      <requirements>
+        <requirement>
+          <role>org.apache.maven.tools.plugin.scanner.MojoScanner</role>
+          <field-name>mojoScanner</field-name>
+        </requirement>
+      </requirements>
+    </mojo>
+  </mojos>
+  <dependencies>
+    <dependency>
+      <groupId>org.apache.maven.plugin-tools</groupId>
+      <artifactId>maven-plugin-tools-annotations</artifactId>
+      <type>jar</type>
+      <version>3.2</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven.plugin-tools</groupId>
+      <artifactId>maven-plugin-annotations</artifactId>
+      <type>jar</type>
+      <version>3.2</version>
+    </dependency>
+    <dependency>
+      <groupId>org.codehaus.plexus</groupId>
+      <artifactId>plexus-component-annotations</artifactId>
+      <type>jar</type>
+      <version>1.5.5</version>
+    </dependency>
+    <dependency>
+      <groupId>org.codehaus.plexus</groupId>
+      <artifactId>plexus-container-default</artifactId>
+      <type>jar</type>
+      <version>1.0-alpha-9-stable-1</version>
+    </dependency>
+    <dependency>
+      <groupId>classworlds</groupId>
+      <artifactId>classworlds</artifactId>
+      <type>jar</type>
+      <version>1.1-alpha-2</version>
+    </dependency>
+    <dependency>
+      <groupId>asm</groupId>
+      <artifactId>asm</artifactId>
+      <type>jar</type>
+      <version>3.3.1</version>
+    </dependency>
+    <dependency>
+      <groupId>asm</groupId>
+      <artifactId>asm-commons</artifactId>
+      <type>jar</type>
+      <version>3.3.1</version>
+    </dependency>
+    <dependency>
+      <groupId>asm</groupId>
+      <artifactId>asm-tree</artifactId>
+      <type>jar</type>
+      <version>3.3.1</version>
+    </dependency>
+    <dependency>
+      <groupId>org.codehaus.plexus</groupId>
+      <artifactId>plexus-archiver</artifactId>
+      <type>jar</type>
+      <version>2.1.1</version>
+    </dependency>
+    <dependency>
+      <groupId>org.codehaus.plexus</groupId>
+      <artifactId>plexus-io</artifactId>
+      <type>jar</type>
+      <version>2.0.3</version>
+    </dependency>
+    <dependency>
+      <groupId>com.thoughtworks.qdox</groupId>
+      <artifactId>qdox</artifactId>
+      <type>jar</type>
+      <version>1.12.1</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven.doxia</groupId>
+      <artifactId>doxia-sink-api</artifactId>
+      <type>jar</type>
+      <version>1.2</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven.doxia</groupId>
+      <artifactId>doxia-logging-api</artifactId>
+      <type>jar</type>
+      <version>1.2</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven.doxia</groupId>
+      <artifactId>doxia-site-renderer</artifactId>
+      <type>jar</type>
+      <version>1.2</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven.doxia</groupId>
+      <artifactId>doxia-core</artifactId>
+      <type>jar</type>
+      <version>1.2</version>
+    </dependency>
+    <dependency>
+      <groupId>xerces</groupId>
+      <artifactId>xercesImpl</artifactId>
+      <type>jar</type>
+      <version>2.9.1</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.httpcomponents</groupId>
+      <artifactId>httpclient</artifactId>
+      <type>jar</type>
+      <version>4.0.2</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.httpcomponents</groupId>
+      <artifactId>httpcore</artifactId>
+      <type>jar</type>
+      <version>4.0.1</version>
+    </dependency>
+    <dependency>
+      <groupId>commons-codec</groupId>
+      <artifactId>commons-codec</artifactId>
+      <type>jar</type>
+      <version>1.3</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven.doxia</groupId>
+      <artifactId>doxia-decoration-model</artifactId>
+      <type>jar</type>
+      <version>1.2</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven.doxia</groupId>
+      <artifactId>doxia-module-xhtml</artifactId>
+      <type>jar</type>
+      <version>1.2</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven.doxia</groupId>
+      <artifactId>doxia-module-fml</artifactId>
+      <type>jar</type>
+      <version>1.2</version>
+    </dependency>
+    <dependency>
+      <groupId>org.codehaus.plexus</groupId>
+      <artifactId>plexus-i18n</artifactId>
+      <type>jar</type>
+      <version>1.0-beta-7</version>
+    </dependency>
+    <dependency>
+      <groupId>commons-collections</groupId>
+      <artifactId>commons-collections</artifactId>
+      <type>jar</type>
+      <version>3.2.1</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven</groupId>
+      <artifactId>maven-plugin-api</artifactId>
+      <type>jar</type>
+      <version>2.2.1</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven</groupId>
+      <artifactId>maven-model</artifactId>
+      <type>jar</type>
+      <version>2.2.1</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven</groupId>
+      <artifactId>maven-repository-metadata</artifactId>
+      <type>jar</type>
+      <version>2.2.1</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven</groupId>
+      <artifactId>maven-project</artifactId>
+      <type>jar</type>
+      <version>2.2.1</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven</groupId>
+      <artifactId>maven-settings</artifactId>
+      <type>jar</type>
+      <version>2.2.1</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven</groupId>
+      <artifactId>maven-profile</artifactId>
+      <type>jar</type>
+      <version>2.2.1</version>
+    </dependency>
+    <dependency>
+      <groupId>org.codehaus.plexus</groupId>
+      <artifactId>plexus-interpolation</artifactId>
+      <type>jar</type>
+      <version>1.11</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven</groupId>
+      <artifactId>maven-plugin-descriptor</artifactId>
+      <type>jar</type>
+      <version>2.2.1</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven</groupId>
+      <artifactId>maven-plugin-registry</artifactId>
+      <type>jar</type>
+      <version>2.2.1</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven.plugin-tools</groupId>
+      <artifactId>maven-plugin-tools-api</artifactId>
+      <type>jar</type>
+      <version>3.2</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven.plugin-tools</groupId>
+      <artifactId>maven-plugin-tools-generators</artifactId>
+      <type>jar</type>
+      <version>3.2</version>
+    </dependency>
+    <dependency>
+      <groupId>net.sf.jtidy</groupId>
+      <artifactId>jtidy</artifactId>
+      <type>jar</type>
+      <version>r938</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven</groupId>
+      <artifactId>maven-artifact-manager</artifactId>
+      <type>jar</type>
+      <version>2.2.1</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven.wagon</groupId>
+      <artifactId>wagon-provider-api</artifactId>
+      <type>jar</type>
+      <version>1.0-beta-6</version>
+    </dependency>
+    <dependency>
+      <groupId>backport-util-concurrent</groupId>
+      <artifactId>backport-util-concurrent</artifactId>
+      <type>jar</type>
+      <version>3.1</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven</groupId>
+      <artifactId>maven-artifact</artifactId>
+      <type>jar</type>
+      <version>2.2.1</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven.reporting</groupId>
+      <artifactId>maven-reporting-impl</artifactId>
+      <type>jar</type>
+      <version>2.1</version>
+    </dependency>
+    <dependency>
+      <groupId>commons-validator</groupId>
+      <artifactId>commons-validator</artifactId>
+      <type>jar</type>
+      <version>1.2.0</version>
+    </dependency>
+    <dependency>
+      <groupId>commons-beanutils</groupId>
+      <artifactId>commons-beanutils</artifactId>
+      <type>jar</type>
+      <version>1.7.0</version>
+    </dependency>
+    <dependency>
+      <groupId>commons-digester</groupId>
+      <artifactId>commons-digester</artifactId>
+      <type>jar</type>
+      <version>1.6</version>
+    </dependency>
+    <dependency>
+      <groupId>commons-logging</groupId>
+      <artifactId>commons-logging</artifactId>
+      <type>jar</type>
+      <version>1.0.4</version>
+    </dependency>
+    <dependency>
+      <groupId>oro</groupId>
+      <artifactId>oro</artifactId>
+      <type>jar</type>
+      <version>2.0.8</version>
+    </dependency>
+    <dependency>
+      <groupId>xml-apis</groupId>
+      <artifactId>xml-apis</artifactId>
+      <type>jar</type>
+      <version>1.0.b2</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven.reporting</groupId>
+      <artifactId>maven-reporting-api</artifactId>
+      <type>jar</type>
+      <version>3.0</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven.plugin-tools</groupId>
+      <artifactId>maven-plugin-tools-java</artifactId>
+      <type>jar</type>
+      <version>3.2</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven.plugin-tools</groupId>
+      <artifactId>maven-plugin-tools-beanshell</artifactId>
+      <type>jar</type>
+      <version>3.2</version>
+    </dependency>
+    <dependency>
+      <groupId>bsh</groupId>
+      <artifactId>bsh</artifactId>
+      <type>jar</type>
+      <version>1.3.0</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven.plugin-tools</groupId>
+      <artifactId>maven-plugin-tools-model</artifactId>
+      <type>jar</type>
+      <version>3.2</version>
+    </dependency>
+    <dependency>
+      <groupId>org.codehaus.plexus</groupId>
+      <artifactId>plexus-utils</artifactId>
+      <type>jar</type>
+      <version>3.0</version>
+    </dependency>
+    <dependency>
+      <groupId>org.codehaus.plexus</groupId>
+      <artifactId>plexus-velocity</artifactId>
+      <type>jar</type>
+      <version>1.1.8</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.velocity</groupId>
+      <artifactId>velocity</artifactId>
+      <type>jar</type>
+      <version>1.7</version>
+    </dependency>
+    <dependency>
+      <groupId>commons-lang</groupId>
+      <artifactId>commons-lang</artifactId>
+      <type>jar</type>
+      <version>2.4</version>
+    </dependency>
+    <dependency>
+      <groupId>commons-httpclient</groupId>
+      <artifactId>commons-httpclient</artifactId>
+      <type>jar</type>
+      <version>3.0</version>
+    </dependency>
+  </dependencies>
 </plugin>

Modified: trunk/maven-plugin-tools/debian/rules
===================================================================
--- trunk/maven-plugin-tools/debian/rules	2013-11-04 16:44:59 UTC (rev 17418)
+++ trunk/maven-plugin-tools/debian/rules	2013-11-04 16:56:42 UTC (rev 17419)
@@ -25,18 +25,33 @@
 
 binary-post-install/lib$(PACKAGE)-java::
 	mh_installpoms -plib$(PACKAGE)-java
-	mh_installjar -plib$(PACKAGE)-java -l maven-plugin-plugin/pom.xml maven-plugin-plugin/target/maven-plugin-plugin-$(VERSION).jar
-	mh_installjar -plib$(PACKAGE)-java -l maven-plugin-tools-ant/pom.xml maven-plugin-tools-ant/target/maven-plugin-tools-ant-$(VERSION).jar
-	mh_installjar -plib$(PACKAGE)-java -l maven-plugin-tools-api/pom.xml maven-plugin-tools-api/target/maven-plugin-tools-api-$(VERSION).jar
-	mh_installjar -plib$(PACKAGE)-java -l maven-plugin-tools-model/pom.xml maven-plugin-tools-model/target/maven-plugin-tools-model-$(VERSION).jar
-	mh_installjar -plib$(PACKAGE)-java -l maven-plugin-tools-beanshell/pom.xml maven-plugin-tools-beanshell/target/maven-plugin-tools-beanshell-$(VERSION).jar
-	mh_installjar -plib$(PACKAGE)-java -l maven-plugin-tools-java/pom.xml maven-plugin-tools-java/target/maven-plugin-tools-java-$(VERSION).jar
-	mh_installjar -plib$(PACKAGE)-java -l maven-plugin-tools-javadoc/pom.xml maven-plugin-tools-javadoc/target/maven-plugin-tools-javadoc-$(VERSION).jar
+	mh_installjar -plib$(PACKAGE)-java    maven-script/maven-script-ant/pom.xml       maven-script/maven-script-ant/target/maven-script-ant-$(VERSION).jar
+	mh_installjar -plib$(PACKAGE)-java    maven-script/maven-script-beanshell/pom.xml maven-script/maven-script-beanshell/target/maven-script-beanshell-$(VERSION).jar
+	mh_installjar -plib$(PACKAGE)-java -l maven-plugin-plugin/pom.xml            maven-plugin-plugin/target/maven-plugin-plugin-$(VERSION).jar
+	mh_installjar -plib$(PACKAGE)-java -l maven-plugin-annotations/pom.xml       maven-plugin-annotations/target/maven-plugin-annotations-$(VERSION).jar
+	mh_installjar -plib$(PACKAGE)-java -l maven-plugin-tools-annotations/pom.xml maven-plugin-tools-annotations/target/maven-plugin-tools-annotations-$(VERSION).jar
+	mh_installjar -plib$(PACKAGE)-java -l maven-plugin-tools-ant/pom.xml         maven-plugin-tools-ant/target/maven-plugin-tools-ant-$(VERSION).jar
+	mh_installjar -plib$(PACKAGE)-java -l maven-plugin-tools-api/pom.xml         maven-plugin-tools-api/target/maven-plugin-tools-api-$(VERSION).jar
+	mh_installjar -plib$(PACKAGE)-java -l maven-plugin-tools-model/pom.xml       maven-plugin-tools-model/target/maven-plugin-tools-model-$(VERSION).jar
+	mh_installjar -plib$(PACKAGE)-java -l maven-plugin-tools-beanshell/pom.xml   maven-plugin-tools-beanshell/target/maven-plugin-tools-beanshell-$(VERSION).jar
+	mh_installjar -plib$(PACKAGE)-java -l maven-plugin-tools-generators/pom.xml  maven-plugin-tools-generators/target/maven-plugin-tools-generators-$(VERSION).jar
+	mh_installjar -plib$(PACKAGE)-java -l maven-plugin-tools-java/pom.xml        maven-plugin-tools-java/target/maven-plugin-tools-java-$(VERSION).jar
+	mh_installjar -plib$(PACKAGE)-java -l maven-plugin-tools-javadoc/pom.xml     maven-plugin-tools-javadoc/target/maven-plugin-tools-javadoc-$(VERSION).jar
 
 clean::
 	mh_unpatchpoms -plib$(PACKAGE)-java
 	mh_clean
+	rm -Rf target
+	rm -Rf maven-plugin-tools-api/target
 	rm -Rf maven-plugin-tools-model/target
+	rm -Rf maven-plugin-tools-java/target
 	rm -Rf maven-plugin-tools-javadoc/target
+	rm -Rf maven-plugin-tools-beanshell/target
 	rm -Rf maven-plugin-tools-ant/target
+	rm -Rf maven-plugin-tools-annotations/target
+	rm -Rf maven-plugin-tools-generators/target
+	rm -Rf maven-script/maven-script-ant/target
+	rm -Rf maven-script/maven-script-beanshell/target
+	rm -Rf maven-plugin-annotations/target
+	rm -Rf maven-plugin-plugin/target
 	find . | grep pom.xml.save | xargs rm -f




More information about the pkg-java-commits mailing list