Class RequireMavenVersion
java.lang.Object
org.apache.maven.enforcer.rule.api.AbstractEnforcerRule
org.apache.maven.enforcer.rules.AbstractStandardEnforcerRule
org.apache.maven.enforcer.rules.version.RequireMavenVersion
- All Implemented Interfaces:
EnforcerRuleBase
@Named("requireMavenVersion")
public final class RequireMavenVersion
extends AbstractStandardEnforcerRule
This rule checks that the Maven version is allowed.
- Author:
- Brian Fox
-
Constructor Summary
ConstructorDescriptionRequireMavenVersion
(org.apache.maven.rtinfo.RuntimeInformation runtimeInformation) -
Method Summary
Modifier and TypeMethodDescriptionvoid
enforceVersion
(String variableName, String requiredVersionRange, org.apache.maven.artifact.versioning.ArtifactVersion actualVersion) Compares the specified version to see if it is allowed by the defined version range.void
execute()
This is the interface into the rule.If the rule is to be cached during session scope, whole executing of Maven build, this id is used as part of the key.getLog()
Provide anEnforcerLogger
instance for Rulefinal String
Gets the required version.void
setLog
(EnforcerLogger log) Used byEnforcerMojo
to inject logger instancevoid
setVersion
(String theVersion) Specify the required version.toString()
protected static String
toString
(org.apache.maven.artifact.versioning.VersionRange vr) Methods inherited from class org.apache.maven.enforcer.rules.AbstractStandardEnforcerRule
formatLocation, getMessage, setMessage
Methods inherited from class org.apache.maven.enforcer.rule.api.AbstractEnforcerRule
getLevel
-
Constructor Details
-
RequireMavenVersion
-
-
Method Details
-
execute
Description copied from class:AbstractEnforcerRule
This 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:
execute
in classAbstractEnforcerRule
- Throws:
EnforcerRuleException
- the enforcer rule exception
-
toString
-
enforceVersion
public void enforceVersion(String variableName, String requiredVersionRange, org.apache.maven.artifact.versioning.ArtifactVersion actualVersion) throws EnforcerRuleException Compares the specified version to see if it is allowed by the defined version range.- Parameters:
variableName
- name of variable to use in messages (Example: "Maven" or "Java" etc).requiredVersionRange
- range of allowed versions.actualVersion
- the version to be checked.- Throws:
EnforcerRuleException
- the enforcer rule exception
-
toString
-
getCacheId
Description copied from class:AbstractEnforcerRule
If the rule is to be cached during session scope, whole executing of Maven build, this id is used as part of the key.Rule of the same class and the same cache id will be executed once.
- Overrides:
getCacheId
in classAbstractEnforcerRule
- Returns:
- id to be used by the Enforcer to determine uniqueness of cache results.
Return
null
disable cache of rule executing.
-
getVersion
Gets the required version.- Returns:
- the required version
-
setVersion
Specify the required version. Some examples are:2.0.4
Version 2.0.4 and higher (different from Maven meaning)[2.0,2.1)
Versions 2.0 (included) to 2.1 (not included)[2.0,2.1]
Versions 2.0 to 2.1 (both included)[2.0.5,)
Versions 2.0.5 and higher(,2.0.5],[2.1.1,)
Versions up to 2.0.5 (included) and 2.1.1 or higher
- Parameters:
theVersion
- the required version to set
-
setLog
Used byEnforcerMojo
to inject logger instance- Specified by:
setLog
in interfaceEnforcerRuleBase
- Parameters:
log
- anEnforcerLogger
instance
-
getLog
Provide anEnforcerLogger
instance for RuleNOTICE A logger is not available in constructors.
- Returns:
- an
EnforcerLogger
instance
-