Class AbstractDependencyFilterMojo
java.lang.Object
org.apache.maven.plugin.AbstractMojo
org.apache.maven.plugins.dependency.AbstractDependencyMojo
org.apache.maven.plugins.dependency.fromDependencies.AbstractDependencyFilterMojo
- All Implemented Interfaces:
org.apache.maven.plugin.ContextEnabled, org.apache.maven.plugin.Mojo
- Direct Known Subclasses:
AbstractFromDependenciesMojo, AbstractResolveMojo, BuildClasspathMojo, GoOfflineMojo, RenderDependenciesMojo
Class that encapsulates the plugin parameters, and contains methods that handle dependency filtering.
- Author:
- Brian Fox
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected StringSpecify classifier to look for.protected StringComma-separated list of artifact IDs to exclude.protected StringComma-separated list of Classifiers to exclude.protected StringComma-separated list of group IDs to exclude.protected StringScope threshold to exclude, if no value is defined for include.protected booleanIf we should exclude transitive dependencies.protected StringComma-separated list of Types to exclude.protected StringComma-separated list of artifact IDs to include.protected StringComma-separated list of Classifiers to include.protected StringComma-separated list of group IDs to include.protected StringScope threshold to include.protected StringComma-separated list of Types to include.protected FileDirectory to store flag files.protected booleanOverwrite artifacts that don't exist or are older than the source.protected booleanOverwrite release artifacts.protected booleanOverwrite snapshot artifacts.protected booleanPrepend the group ID during copy.protected StringSpecify type to look for when constructing artifact based on classifier.Fields inherited from class AbstractDependencyMojo
sessionFields inherited from interface org.apache.maven.plugin.Mojo
ROLE -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedAbstractDependencyFilterMojo(org.apache.maven.execution.MavenSession session, org.sonatype.plexus.build.incremental.BuildContext buildContext, org.apache.maven.project.MavenProject project, ResolverUtil resolverUtil, org.apache.maven.project.ProjectBuilder projectBuilder, org.apache.maven.artifact.handler.manager.ArtifactHandlerManager artifactHandlerManager) -
Method Summary
Modifier and TypeMethodDescriptionprotected DependencyStatusSetsfilterMarkedDependencies(Set<org.apache.maven.artifact.Artifact> artifacts) Filter the marked dependencies.protected DependencyStatusSetsgetDependencySets(boolean stopOnFailure) protected DependencyStatusSetsgetDependencySets(boolean stopOnFailure, boolean includeParents) Method creates filters and filters the projects dependencies.protected abstract org.apache.maven.shared.artifact.filter.collection.ArtifactsFilterReturn anArtifactsFilterindicating which artifacts must be filtered out.protected Set<org.apache.maven.artifact.Artifact> getResolvedDependencies(boolean stopOnFailure) Retrieves dependencies, either direct only or all including transitive.protected final ResolverUtilbooleanvoidsetMarkersDirectory(File theMarkersDirectory) voidsetPrependGroupId(boolean prependGroupId) Methods inherited from class AbstractDependencyMojo
doExecute, execute, getProject, isSilent, isSkip, setSilent, setSkipMethods inherited from class org.apache.maven.plugin.AbstractMojo
getLog, getPluginContext, setLog, setPluginContext
-
Field Details
-
overWriteReleases
@Parameter(property="overWriteReleases", defaultValue="false") protected boolean overWriteReleasesOverwrite release artifacts.- Since:
- 1.0
-
overWriteSnapshots
@Parameter(property="overWriteSnapshots", defaultValue="false") protected boolean overWriteSnapshotsOverwrite snapshot artifacts.- Since:
- 1.0
-
overWriteIfNewer
@Parameter(property="overWriteIfNewer", defaultValue="true") protected boolean overWriteIfNewerOverwrite artifacts that don't exist or are older than the source.- Since:
- 2.0
-
excludeTransitive
@Parameter(property="excludeTransitive", defaultValue="false") protected boolean excludeTransitiveIf we should exclude transitive dependencies.- Since:
- 2.0
-
includeTypes
Comma-separated list of Types to include. Empty String indicates include everything (default).- Since:
- 2.0
-
excludeTypes
Comma-separated list of Types to exclude. Empty String indicates don't exclude anything (default).- Since:
- 2.0
-
includeScope
Scope threshold to include. An empty string indicates include all dependencies (default).
The scope threshold value being interpreted is the scope as Maven filters for creating a classpath, not as specified in the pom. In summary:runtimeinclude scope gives runtime and compile dependencies,compileinclude scope gives compile, provided, and system dependencies,testinclude scope gives all dependencies (equivalent to default),providedinclude scope just gives provided dependencies,systeminclude scope just gives system dependencies.
- Since:
- 2.0
-
excludeScope
Scope threshold to exclude, if no value is defined for include. An empty string indicates no dependencies (default). Unlike the other exclusion parameters, this property does not support a comma-delimited list of scope exclusions. Just one scope may be excluded at a time.
The scope threshold value being interpreted is the scope as Maven filters for creating a classpath, not as specified in the pom. In summary:runtimeexclude scope excludes runtime and compile dependencies,compileexclude scope excludes compile, provided, and system dependencies,testexclude scope excludes all dependencies, then not really a legitimate option: it will fail, you probably meant to configure includeScope = compileprovidedexclude scope just excludes provided dependencies,systemexclude scope just excludes system dependencies.
- Since:
- 2.0
-
includeClassifiers
Comma-separated list of Classifiers to include. Empty string indicates include everything (default).- Since:
- 2.0
-
excludeClassifiers
Comma-separated list of Classifiers to exclude. Empty String indicates don't exclude anything (default).- Since:
- 2.0
-
classifier
Specify classifier to look for. Example: sources.- Since:
- 2.0
-
type
Specify type to look for when constructing artifact based on classifier. Example: java-source,jar,war.- Since:
- 2.0
-
excludeArtifactIds
Comma-separated list of artifact IDs to exclude.- Since:
- 2.0
-
includeArtifactIds
Comma-separated list of artifact IDs to include. Empty String indicates include everything (default).- Since:
- 2.0
-
excludeGroupIds
Comma-separated list of group IDs to exclude.- Since:
- 2.0
-
includeGroupIds
Comma-separated list of group IDs to include. Empty string indicates include everything (default).- Since:
- 2.0
-
markersDirectory
@Parameter(property="markersDirectory", defaultValue="${project.build.directory}/dependency-maven-plugin-markers") protected File markersDirectoryDirectory to store flag files.- Since:
- 2.0
-
prependGroupId
@Parameter(property="mdep.prependGroupId", defaultValue="false") protected boolean prependGroupIdPrepend the group ID during copy.- Since:
- 2.2
-
-
Constructor Details
-
AbstractDependencyFilterMojo
@Inject protected AbstractDependencyFilterMojo(org.apache.maven.execution.MavenSession session, org.sonatype.plexus.build.incremental.BuildContext buildContext, org.apache.maven.project.MavenProject project, ResolverUtil resolverUtil, org.apache.maven.project.ProjectBuilder projectBuilder, org.apache.maven.artifact.handler.manager.ArtifactHandlerManager artifactHandlerManager)
-
-
Method Details
-
getMarkedArtifactFilter
protected abstract org.apache.maven.shared.artifact.filter.collection.ArtifactsFilter getMarkedArtifactFilter()Return anArtifactsFilterindicating which artifacts must be filtered out.- Returns:
- an
ArtifactsFilterindicating which artifacts must be filtered out
-
getResolvedDependencies
protected Set<org.apache.maven.artifact.Artifact> getResolvedDependencies(boolean stopOnFailure) throws org.apache.maven.plugin.MojoExecutionException Retrieves dependencies, either direct only or all including transitive.- Parameters:
stopOnFailure- true to fail if resolution does not work or false not to fail- Returns:
- a set of artifacts
- Throws:
org.apache.maven.plugin.MojoExecutionException- in case of errors
-
getDependencySets
protected DependencyStatusSets getDependencySets(boolean stopOnFailure) throws org.apache.maven.plugin.MojoExecutionException - Parameters:
stopOnFailure- true/false- Returns:
DependencyStatusSets- Throws:
org.apache.maven.plugin.MojoExecutionException- in case of an error
-
getDependencySets
protected DependencyStatusSets getDependencySets(boolean stopOnFailure, boolean includeParents) throws org.apache.maven.plugin.MojoExecutionException Method creates filters and filters the projects dependencies. This method also transforms the dependencies if classifier is set. The dependencies are filtered in least specific to most specific order.- Parameters:
stopOnFailure- true to fail if artifacts can't be resolved false otherwiseincludeParents-trueif parents should be included or notfalse- Returns:
- DependencyStatusSets - Bean of TreeSets that contains information on the projects dependencies
- Throws:
org.apache.maven.plugin.MojoExecutionException- in case of errors
-
filterMarkedDependencies
protected DependencyStatusSets filterMarkedDependencies(Set<org.apache.maven.artifact.Artifact> artifacts) throws org.apache.maven.plugin.MojoExecutionException Filter the marked dependencies.- Parameters:
artifacts- the artifacts setArtifact- Returns:
- status set
DependencyStatusSets - Throws:
org.apache.maven.plugin.MojoExecutionException- in case of an error
-
getMarkersDirectory
- Returns:
- returns the markersDirectory
-
setMarkersDirectory
- Parameters:
theMarkersDirectory- the markersDirectory to set
-
isPrependGroupId
public boolean isPrependGroupId()- Returns:
- true, if the groupId should be prepended to the filename
-
setPrependGroupId
public void setPrependGroupId(boolean prependGroupId) - Parameters:
prependGroupId- true if the groupId must be prepended during the copy
-
getResolverUtil
- Returns:
resolverUtil
-