aQute.maven.dto.PluginDTO Maven / Gradle / Ivy
package aQute.maven.dto;
import java.util.Map;
import aQute.bnd.util.dto.DTO;
import aQute.bnd.version.MavenVersion;
/**
* The <plugin>
element contains informations required for a
* plugin.
*/
public class PluginDTO extends DTO {
/**
* The group ID of the plugin in the repository.
*/
public String groupId = "org.apache.maven.plugins";
/**
* The artifact ID of the plugin in the repository.
*/
public String artifactId;
/**
* The version (or valid range of versions) of the plugin to be used.
*/
public MavenVersion version;
/**
* Whether to load Maven extensions (such as packaging and type handlers)
* from this plugin. For performance reasons, this should only be enabled
* when necessary. Note: While the type of this field is String
* for technical reasons, the semantic type is actually Boolean
* . Default value is false
.
*/
public String extensions;
/**
* Multiple specifications of a set of goals to execute during the build
* lifecycle, each having (possibly) a different configuration.
*/
public PluginExecutionDTO[] executions;
/**
* Additional dependencies that this project needs to introduce to the
* plugin's classloader.
*/
public DependencyDTO[] depencies;
/**
* Whether any configuration should be propagated to child POMs. Note: While
* the type of this field is String
for technical reasons, the
* semantic type is actually Boolean
. Default value is
* true
.
*/
public boolean inherited = true;
/**
*
* The configuration as DOM object.
*
*
* By default, every element content is trimmed, but starting with Maven
* 3.1.0, you can add xml:space="preserve"
to elements you want
* to preserve whitespace.
*
*
* You can control how child POMs inherit configuration from parent POMs by
* adding combine.children
or combine.self
* attributes to the children of the configuration element:
*
*
* combine.children
: available values are
* merge
(default) and append
,
* combine.self
: available values are merge
* (default) and override
.
*
*
* See POM Reference
* documentation and
* Xpp3DomUtils for more information.
*
*/
public Map configuration;
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy