public abstract class AbstractAnalyzeMojo
extends org.apache.maven.plugin.AbstractMojo
implements org.codehaus.plexus.personality.plexus.lifecycle.phase.Contextualizable
Modifier and Type | Field and Description |
---|---|
private java.lang.String |
analyzer
Specify the project dependency analyzer to use (plexus component role-hint).
|
private java.io.File |
baseDir
Flag to use for scriptable output
|
private org.codehaus.plexus.context.Context |
context
The plexus context to look-up the right
ProjectDependencyAnalyzer implementation depending on the mojo
configuration. |
private boolean |
failOnWarning
Whether to fail the build if a dependency warning is found.
|
private java.lang.String[] |
ignoredDependencies
List of dependencies that will be ignored.
|
private java.lang.String[] |
ignoredUnusedDeclaredDependencies
List of dependencies that will be ignored if they are declared but unused.
|
private java.lang.String[] |
ignoredUsedUndeclaredDependencies
List of dependencies that will be ignored if they are used but undeclared.
|
private boolean |
ignoreNonCompile
Ignore Runtime/Provided/Test/System scopes for unused dependency analysis.
|
private java.io.File |
outputDirectory
Target folder
|
private boolean |
outputXML
Output the xml for the missing dependencies (used but not declared).
|
private org.apache.maven.project.MavenProject |
project
The Maven project to analyze.
|
private java.lang.String |
scriptableFlag
Flag to use for scriptable output.
|
private boolean |
scriptableOutput
Output scriptable values for the missing dependencies (used but not declared).
|
private boolean |
skip
Skip plugin execution completely.
|
private java.lang.String[] |
usedDependencies
Force dependencies as used, to override incomplete result caused by bytecode-level analysis.
|
private boolean |
verbose
Output used dependencies.
|
Constructor and Description |
---|
AbstractAnalyzeMojo() |
Modifier and Type | Method and Description |
---|---|
private boolean |
checkDependencies() |
void |
contextualize(org.codehaus.plexus.context.Context context) |
protected org.apache.maven.shared.dependency.analyzer.ProjectDependencyAnalyzer |
createProjectDependencyAnalyzer() |
void |
execute() |
private java.util.List<org.apache.maven.artifact.Artifact> |
filterDependencies(java.util.Set<org.apache.maven.artifact.Artifact> artifacts,
java.lang.String[] excludes) |
protected boolean |
isSkip() |
private void |
logArtifacts(java.util.Set<org.apache.maven.artifact.Artifact> artifacts,
boolean warn) |
private void |
writeDependencyXML(java.util.Set<org.apache.maven.artifact.Artifact> artifacts) |
private void |
writeScriptableOutput(java.util.Set<org.apache.maven.artifact.Artifact> artifacts) |
private org.codehaus.plexus.context.Context context
ProjectDependencyAnalyzer
implementation depending on the mojo
configuration.@Parameter(defaultValue="${project}", readonly=true, required=true) private org.apache.maven.project.MavenProject project
@Parameter(property="analyzer", defaultValue="default") private java.lang.String analyzer
@Parameter(property="failOnWarning", defaultValue="false") private boolean failOnWarning
@Parameter(property="verbose", defaultValue="false") private boolean verbose
@Parameter(property="ignoreNonCompile", defaultValue="false") private boolean ignoreNonCompile
@Parameter(property="outputXML", defaultValue="false") private boolean outputXML
@Parameter(property="scriptableOutput", defaultValue="false") private boolean scriptableOutput
@Parameter(property="scriptableFlag", defaultValue="$$$%%%") private java.lang.String scriptableFlag
@Parameter(defaultValue="${basedir}", readonly=true) private java.io.File baseDir
@Parameter(defaultValue="${project.build.directory}", readonly=true) private java.io.File outputDirectory
@Parameter private java.lang.String[] usedDependencies
groupId:artifactId
.@Parameter(property="mdep.analyze.skip", defaultValue="false") private boolean skip
@Parameter private java.lang.String[] ignoredDependencies
[groupId]:[artifactId]:[type]:[version]where each pattern segment is optional and supports full and partial
*
wildcards. An empty pattern
segment is treated as an implicit wildcard. *
For example, org.apache.*
will match all artifacts whose group id starts with
org.apache.
, and :::*-SNAPSHOT
will match all snapshot artifacts.
StrictPatternIncludesArtifactFilter
@Parameter private java.lang.String[] ignoredUsedUndeclaredDependencies
[groupId]:[artifactId]:[type]:[version]where each pattern segment is optional and supports full and partial
*
wildcards. An empty pattern
segment is treated as an implicit wildcard. *
For example, org.apache.*
will match all artifacts whose group id starts with
org.apache.
, and :::*-SNAPSHOT
will match all snapshot artifacts.
StrictPatternIncludesArtifactFilter
@Parameter private java.lang.String[] ignoredUnusedDeclaredDependencies
[groupId]:[artifactId]:[type]:[version]where each pattern segment is optional and supports full and partial
*
wildcards. An empty pattern
segment is treated as an implicit wildcard. *
For example, org.apache.*
will match all artifacts whose group id starts with
org.apache.
, and :::*-SNAPSHOT
will match all snapshot artifacts.
StrictPatternIncludesArtifactFilter
public void execute() throws org.apache.maven.plugin.MojoExecutionException, org.apache.maven.plugin.MojoFailureException
execute
in interface org.apache.maven.plugin.Mojo
org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoFailureException
protected org.apache.maven.shared.dependency.analyzer.ProjectDependencyAnalyzer createProjectDependencyAnalyzer() throws org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoExecutionException
public void contextualize(org.codehaus.plexus.context.Context context) throws org.codehaus.plexus.context.ContextException
contextualize
in interface org.codehaus.plexus.personality.plexus.lifecycle.phase.Contextualizable
org.codehaus.plexus.context.ContextException
protected final boolean isSkip()
private boolean checkDependencies() throws org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoExecutionException
private void logArtifacts(java.util.Set<org.apache.maven.artifact.Artifact> artifacts, boolean warn)
private void writeDependencyXML(java.util.Set<org.apache.maven.artifact.Artifact> artifacts)
private void writeScriptableOutput(java.util.Set<org.apache.maven.artifact.Artifact> artifacts)
private java.util.List<org.apache.maven.artifact.Artifact> filterDependencies(java.util.Set<org.apache.maven.artifact.Artifact> artifacts, java.lang.String[] excludes) throws org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoExecutionException