Class BannedDependencies
java.lang.Object
org.apache.maven.enforcer.rule.api.AbstractEnforcerRule
org.apache.maven.enforcer.rules.AbstractStandardEnforcerRule
org.apache.maven.enforcer.rules.dependency.BannedDependencies
- All Implemented Interfaces:
EnforcerRuleBase
@Named("bannedDependencies")
public final class BannedDependencies
extends AbstractStandardEnforcerRule
This rule checks that lists of dependencies are not included.
- Author:
- Brian Fox
-
Method Summary
Modifier and TypeMethodDescriptionvoid
execute()
protected String
Gets the excludes.Gets the includes.getLog()
protected org.apache.maven.execution.MavenSession
boolean
void
setExcludes
(List<String> theExcludes) Specify the banned dependencies.void
setIncludes
(List<String> theIncludes) Specify the allowed dependencies.void
setLog
(EnforcerLogger arg0) void
setSearchTransitive
(boolean theSearchTransitive) Sets the search transitive.toString()
protected boolean
validate
(org.apache.maven.artifact.Artifact artifact) Validates a dependency artifact if it fulfills the enforcer ruleprotected boolean
validate
(org.eclipse.aether.graph.DependencyNode node, int level, StringBuilder messageBuilder) Methods inherited from class org.apache.maven.enforcer.rules.AbstractStandardEnforcerRule
formatLocation, getMessage, setMessage
Methods inherited from class org.apache.maven.enforcer.rule.api.AbstractEnforcerRule
getCacheId, getLevel
-
Method Details
-
validate
Validates a dependency artifact if it fulfills the enforcer rule- Parameters:
artifact
- dependency to be checked against the list of excludes- Returns:
true
if the dependency passes the rule,false
if the dependency triggers a validation error
-
getErrorMessage
-
toString
-
getSession
protected org.apache.maven.execution.MavenSession getSession() -
execute
- Specified by:
execute
in classAbstractEnforcerRule
- Throws:
EnforcerRuleException
-
validate
protected boolean validate(org.eclipse.aether.graph.DependencyNode node, int level, StringBuilder messageBuilder) -
setSearchTransitive
public void setSearchTransitive(boolean theSearchTransitive) Sets the search transitive.- Parameters:
theSearchTransitive
- the searchTransitive to set
-
getExcludes
Gets the excludes.- Returns:
- the excludes
-
setExcludes
Specify the banned dependencies. This can be a list of artifacts in the formatgroupId[:artifactId][:version]
. Any of the sections can be a wildcard by using '*' (ie group:*:1.0)
The rule will fail if any dependency matches any exclude, unless it also matches an include rule.- Parameters:
theExcludes
- the excludes to set- See Also:
-
getIncludes
Gets the includes.- Returns:
- the includes
-
setIncludes
Specify the allowed dependencies. This can be a list of artifacts in the formatgroupId[:artifactId][:version]
. Any of the sections can be a wildcard by using '*' (ie group:*:1.0)
Includes override the exclude rules. It is meant to allow wide exclusion rules with wildcards and still allow a smaller set of includes.
For example, to ban all xerces except xerces-api → exclude "xerces", include "xerces:xerces-api"- Parameters:
theIncludes
- the includes to set- See Also:
-
isSearchTransitive
public boolean isSearchTransitive() -
setLog
- Specified by:
setLog
in interfaceEnforcerRuleBase
-
getLog
-