Class RequireReleaseDeps
java.lang.Object
org.apache.maven.enforcer.rule.api.AbstractEnforcerRule
org.apache.maven.enforcer.rules.AbstractStandardEnforcerRule
org.apache.maven.enforcer.rules.dependency.RequireReleaseDeps
- All Implemented Interfaces:
EnforcerRuleBase
@Named("requireReleaseDeps")
public final class RequireReleaseDeps
extends AbstractStandardEnforcerRule
This rule checks that no snapshots are included.
- Author:
- Brian Fox
-
Constructor Summary
ConstructorsConstructorDescriptionRequireReleaseDeps(org.apache.maven.execution.MavenSession session, org.apache.maven.enforcer.rules.dependency.ResolverUtil resolverUtil) -
Method Summary
Modifier and TypeMethodDescriptionvoidexecute()protected StringGets the excludes.Gets the includes.getLog()protected org.apache.maven.execution.MavenSessionbooleanvoidsetExcludes(List<String> excludes) Specify the banned dependencies.voidsetFailWhenParentIsSnapshot(boolean failWhenParentIsSnapshot) voidsetIncludes(List<String> includes) Specify the allowed dependencies.voidsetLog(EnforcerLogger arg0) voidsetOnlyWhenRelease(boolean onlyWhenRelease) voidsetSearchTransitive(boolean searchTransitive) Sets the search transitive.toString()protected booleanvalidate(org.apache.maven.artifact.Artifact artifact) Validates a dependency artifact if it fulfills the enforcer ruleprotected booleanvalidate(org.eclipse.aether.graph.DependencyNode node, int level, StringBuilder messageBuilder, Set<ArtifactMatcher.MatchingArtifact> visitedArtifacts) Methods inherited from class org.apache.maven.enforcer.rules.AbstractStandardEnforcerRule
formatLocation, getMessage, setMessageMethods inherited from class org.apache.maven.enforcer.rule.api.AbstractEnforcerRule
getCacheId, getLevel, getRuleName
-
Constructor Details
-
RequireReleaseDeps
@Inject public RequireReleaseDeps(org.apache.maven.execution.MavenSession session, org.apache.maven.enforcer.rules.dependency.ResolverUtil resolverUtil)
-
-
Method Details
-
execute
- Throws:
EnforcerRuleException
-
getErrorMessage
-
validate
Validates a dependency artifact if it fulfills the enforcer rule- Parameters:
artifact- dependency to be checked against the list of excludes- Returns:
trueif the dependency passes the rule,falseif the dependency triggers a validation error
-
setOnlyWhenRelease
-
setFailWhenParentIsSnapshot
-
toString
-
getSession
protected org.apache.maven.execution.MavenSession getSession() -
validate
protected boolean validate(org.eclipse.aether.graph.DependencyNode node, int level, StringBuilder messageBuilder, Set<ArtifactMatcher.MatchingArtifact> visitedArtifacts) -
setSearchTransitive
public void setSearchTransitive(boolean searchTransitive) Sets the search transitive.- Parameters:
searchTransitive- 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:
excludes- 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:
includes- the includes to set- See Also:
-
isSearchTransitive
public boolean isSearchTransitive() -
setLog
- Specified by:
setLogin interfaceEnforcerRuleBase
-
getLog
-