Class RequireUpperBoundDeps
- java.lang.Object
-
- org.apache.maven.enforcer.rule.api.AbstractEnforcerRuleBase
-
- org.apache.maven.enforcer.rule.api.AbstractEnforcerRule
-
- org.apache.maven.enforcer.rules.AbstractStandardEnforcerRule
-
- org.apache.maven.enforcer.rules.dependency.RequireUpperBoundDeps
-
- All Implemented Interfaces:
EnforcerRuleBase
@Named("requireUpperBoundDeps") public final class RequireUpperBoundDeps extends AbstractStandardEnforcerRuleRule to enforce that the resolved dependency is also the most recent one of all transitive dependencies.- Since:
- 1.1
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classRequireUpperBoundDeps.DependencyNodeHopCountPairprivate static classRequireUpperBoundDeps.RequireUpperBoundDepsVisitor
-
Field Summary
Fields Modifier and Type Field Description private java.util.List<java.lang.String>excludedScopesScope to exclude.private java.util.List<java.lang.String>excludesDependencies to ignore.private java.util.List<java.lang.String>includesDependencies to include.private ResolverUtilresolverUtilprivate booleanuniqueVersionsprivate RequireUpperBoundDeps.RequireUpperBoundDepsVisitorupperBoundDepsVisitor
-
Constructor Summary
Constructors Constructor Description RequireUpperBoundDeps(ResolverUtil resolverUtil)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private java.lang.StringbuildErrorMessage(java.util.List<org.eclipse.aether.graph.DependencyNode> conflict)private java.util.List<java.lang.String>buildErrorMessages(java.util.List<java.util.List<org.eclipse.aether.graph.DependencyNode>> conflicts)private java.lang.StringBuilderbuildTreeString(org.eclipse.aether.graph.DependencyNode node)voidexecute()This is the interface into the rule.private java.lang.StringgetFullArtifactName(org.eclipse.aether.graph.DependencyNode node, boolean usePremanaged)voidsetExcludes(java.util.List<java.lang.String> excludes)Sets dependencies to exclude.voidsetIncludes(java.util.List<java.lang.String> includes)Sets dependencies to include.-
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, getRuleName
-
Methods inherited from class org.apache.maven.enforcer.rule.api.AbstractEnforcerRuleBase
getLog, setLog
-
-
-
-
Field Detail
-
uniqueVersions
private boolean uniqueVersions
- Since:
- 1.3
-
excludes
private java.util.List<java.lang.String> excludes
Dependencies to ignore.- Since:
- TBD
-
includes
private java.util.List<java.lang.String> includes
Dependencies to include.- Since:
- 3.0.0
-
excludedScopes
private java.util.List<java.lang.String> excludedScopes
Scope to exclude.
-
upperBoundDepsVisitor
private RequireUpperBoundDeps.RequireUpperBoundDepsVisitor upperBoundDepsVisitor
-
resolverUtil
private final ResolverUtil resolverUtil
-
-
Constructor Detail
-
RequireUpperBoundDeps
@Inject public RequireUpperBoundDeps(ResolverUtil resolverUtil)
-
-
Method Detail
-
setExcludes
public void setExcludes(java.util.List<java.lang.String> excludes)
Sets dependencies to exclude.- Parameters:
excludes- a list ofgroupId:artifactIdnames
-
setIncludes
public void setIncludes(java.util.List<java.lang.String> includes)
Sets dependencies to include.- Parameters:
includes- a list ofgroupId:artifactIdnames
-
execute
public void execute() throws EnforcerRuleExceptionDescription copied from class:AbstractEnforcerRuleThis is the interface into the rule. This method should throw an exception containing a reason message if the rule fails the check. The plugin will then decide based on the fail flag and rule level if it should stop or just log the message as a warning.- Specified by:
executein classAbstractEnforcerRule- Throws:
EnforcerRuleException- the enforcer rule exceptionEnforcerRuleError- in order to brake a build immediately
-
buildErrorMessages
private java.util.List<java.lang.String> buildErrorMessages(java.util.List<java.util.List<org.eclipse.aether.graph.DependencyNode>> conflicts)
-
buildErrorMessage
private java.lang.String buildErrorMessage(java.util.List<org.eclipse.aether.graph.DependencyNode> conflict)
-
buildTreeString
private java.lang.StringBuilder buildTreeString(org.eclipse.aether.graph.DependencyNode node)
-
getFullArtifactName
private java.lang.String getFullArtifactName(org.eclipse.aether.graph.DependencyNode node, boolean usePremanaged)
-
-