plugin
PluginDescriptor
META-INF/maven/plugin.xml in a plugin's jar artifact.
This descriptor is generally generated from plugin sources, using
maven-plugin-plugin.
]]>
package
org.apache.maven.plugin.descriptor.model
PluginDescriptor
1.0.0
plugin.xml file.]]>
description
1.0.0
Description of the plugin.
String
groupId
1.0.0
The group id of the plugin.
String
artifactId
1.0.0
The artifact id of the plugin.
String
version
1.0.0
The version of the plugin.
String
goalPrefix
1.0.0
String
isolatedRealm
1.0.0
boolean
false
inheritedByDefault
1.0.0
boolean
true
mojos
1.0.0
MojoDescriptor
*
Description of each Mojo provided by the plugin.
dependencies
1.0.0
Dependency
*
A set of dependencies which the plugin requires in order to function. This enables the plugin to function
independently of its POM (or at least to declare the libraries it needs to run).
MojoDescriptor
1.0.0
goal
true
1.0.0
String
The name for the Mojo that users will reference from the command line to execute the Mojo directly,
or inside a POM in order to provide Mojo-specific configuration.
description
1.0.0
String
The description of this Mojo's functionality.
implementation
1.0.0
String
The Mojo's fully-qualified class name (or script path in the case of non-Java Mojos).
language
1.0.0
String
java
The implementation language for this Mojo (Java, beanshell, etc.).
phase
1.0.0
String
Note: This annotation will not automagically make a mojo run when the plugin declaration is added
to the POM. It merely enables the user to omit the <phase>
element from the
surrounding <execution>
element.
]]>
executePhase
1.0.0
String
executeGoal
1.0.0
String
executeLifecycle
1.0.0
String
requiresDependencyResolution
1.0.0
String
runtime
compile, runtime
, test
,
compile+runtime
(since Maven 3.0)
]]>
requiresDependencyCollection
1.0.0
String
requiresDirectInvocation
1.0.0
boolean
Flags this Mojo to be invoked directly.
false
requiresProject
1.0.0
boolean
Flags this Mojo to run inside of a project.
true
requiresReports
1.0.0
boolean
Flags this Mojo to require reports. Unsupported since Maven 3.0.
false
requiresOnline
1.0.0
boolean
Flags this Mojo to require online mode for its operation.
false
aggregator
1.0.0
boolean
Flags this Mojo to run it in a multi module way, i.e. aggregate the build with the set of projects
listed as modules.
inheritedByDefault
1.0.0
boolean
Specify that the Mojo is inherited.
true
threadSafe
1.0.0
boolean
Marks this mojo as being thread-safe, i.e. the mojo safely supports concurrent execution during parallel
builds. Mojos without this annotation will make Maven output a warning when used during a parallel build
session. Since Maven 3.0.
instantiationStrategy
1.0.0
String
per-lookup
Specify the instantiation strategy.
executionStrategy
1.0.0
String
once-per-session, always
.
]]>
since
1.0.0
String
Specify the version when the Mojo was added to the API. Similar to Javadoc since.
deprecated
1.0.0
String
Specify the version when the Mojo was deprecated to the API. Similar to Javadoc deprecated. This will
trigger a warning when a user tries to configure a parameter marked as deprecated.
configurator
1.0.0
String
The configurator type to use when injecting parameter values into this Mojo. The value is normally deduced
from the Mojo's implementation language, but can be specified to allow a custom ComponentConfigurator
implementation to be used.
composer
1.0.0
String
parameters
1.0.0
Parameter
*
configuration
1.0.0
Configuration
*
requirements
1.0.0
Requirement
*
Parameter
1.0.0
A phase mapping definition.
name
1.0.0
String
true
The name of the parameter, to be used in configuring this parameter from the Mojo's declared defaults
or from the POM.
alias
1.0.0
String
Specifies an alias which can be used to configure this parameter from the POM.
This is primarily useful to improve user-friendliness, where Mojo field names are not intuitive to the
user or are otherwise not conducive to configuration via the POM.
type
1.0.0
String
true
The Java type for this parameter. This is used to validate the result of any expressions used to calculate
the value which should be injected into the Mojo for this parameter.
required
1.0.0
boolean
Whether this parameter is required for the Mojo to function. This is used to validate the configuration
for a Mojo before it is injected, and before the Mojo is executed from some half-state.
editable
1.0.0
boolean
true
<build><finalName/></build> rather
than specifying a value for finalName directly in the plugin configuration section. It is also useful to
ensure that - for example - a List-typed parameter which expects items of type Artifact doesn't get a List
full of Strings.
]]>
implementation
1.0.0
String
description
1.0.0
String
The description of this parameter's use inside the Mojo.
since
1.0.0
String
Specify the version when the parameter was added to the API. Similar to Javadoc since.
deprecated
1.0.0
String
Specify the version when the parameter was deprecated to the API. Similar to Javadoc deprecated.
This will trigger a warning when a user tries to configure a parameter marked as deprecated.
Configuration
1.0.0
A parameter configuration.
expression
true
1.0.0
String
Parameter expression.
implementation
1.0.0
String
defaultValue
1.0.0
String
Requirement
1.0.0
role
true
1.0.0
String
roleHint
1.0.0
String
fieldName
true
1.0.0
String
Dependency
1.0.0
Definition of a dependency, needed by the plugin at runtime.
groupId
true
1.0.0
String
The group id of the dependency.
artifactId
true
1.0.0
String
The artifact id of the dependency.
version
1.0.0
String
The version of the dependency.
type
1.0.0
String
jar
The type of dependency.