| ------ |
| Usage |
| ------ |
| Maria Odea Ching |
| Vincent Siveton |
| ------ |
| 2008-01-01 |
| ------ |
| |
| ~~ Licensed to the Apache Software Foundation (ASF) under one |
| ~~ or more contributor license agreements. See the NOTICE file |
| ~~ distributed with this work for additional information |
| ~~ regarding copyright ownership. The ASF licenses this file |
| ~~ to you under the Apache License, Version 2.0 (the |
| ~~ "License"); you may not use this file except in compliance |
| ~~ with the License. You may obtain a copy of the License at |
| ~~ |
| ~~ http://www.apache.org/licenses/LICENSE-2.0 |
| ~~ |
| ~~ Unless required by applicable law or agreed to in writing, |
| ~~ software distributed under the License is distributed on an |
| ~~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| ~~ KIND, either express or implied. See the License for the |
| ~~ specific language governing permissions and limitations |
| ~~ under the License. |
| |
| ~~ NOTE: For help with the syntax of this file, see: |
| ~~ http://maven.apache.org/doxia/references/apt-format.html |
| |
| Usage |
| |
| The Plugin Plugin is generally used for Maven plugins. Its goals are bound to different phases in the build life cycle. |
| So when you execute a specific phase, the Plugin Plugin goals bound to it are also executed. Aside from this, each goal can |
| also be explicitly executed from the command line. |
| |
| * The <<<plugin:descriptor>>> Goal |
| |
| The <<<plugin:descriptor>>> goal is bound to the <<<process-classes>>> phase since 3.0; it was bound to <<<generate-resources>>> phase previously. |
| This goal generates the plugin descriptor, which is an xml file that contains information about the plugin |
| (see {{{/ref/current/maven-plugin-api/plugin.html}descriptor's reference}}). |
| |
| For example, you want to create an archive of your plugin and you execute |
| |
| +-----+ |
| mvn package |
| +-----+ |
| |
| You will see that the <<<plugin.xml>>> file is generated in the <<<target/classes/META-INF/maven>>> directory of your project. The file is |
| also bundled in the generated JAR file. |
| |
| To explicitly execute the <<<plugin:descriptor>>> goal, type the following in the command line: |
| |
| +-----+ |
| mvn plugin:descriptor |
| +-----+ |
| |
| * The <<<plugin:addPluginArtifactMetadata>>> Goal |
| |
| The <<<plugin:addPluginArtifactMetadata>>> goal, on the other hand, is bound to the <<<package>>> phase of the build life cycle. |
| This goal will add the metadata to the project artifact. To do this, execute |
| |
| +-----+ |
| mvn package |
| +-----+ |
| |
| * The <<<plugin:helpmojo>>> Goal |
| |
| To generate a <<<HelpMojo>>> for the mojos of your plugin, execute the following on the command line: |
| |
| +-----+ |
| mvn plugin:helpmojo |
| +-----+ |
| |
| The mojo is generated by default in <<<$\{project.build.directory\}/generated-sources/plugin>>>. |