Class BanDuplicatePomDependencyVersions
java.lang.Object
org.apache.maven.plugins.enforcer.AbstractStandardEnforcerRule
org.apache.maven.plugins.enforcer.AbstractNonCacheableEnforcerRule
org.apache.maven.plugins.enforcer.BanDuplicatePomDependencyVersions
- All Implemented Interfaces:
EnforcerRule
,EnforcerRule2
Since Maven 3 'dependencies.dependency.(groupId:artifactId:type:classifier)' must be unique. Early versions of Maven
3 already warn, this rule can force to break a build for this reason.
- Since:
- 1.3
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
execute
(EnforcerRuleHelper helper) This is the interface into the rule.private void
maven2Validation
(EnforcerRuleHelper helper, org.apache.maven.model.Model model) private void
messageBuilder
(Map<String, Integer> duplicateDependencies, String prefix, StringBuilder message) validateDependencies
(List<org.apache.maven.model.Dependency> dependencies) Methods inherited from class org.apache.maven.plugins.enforcer.AbstractNonCacheableEnforcerRule
getCacheId, isCacheable, isResultValid
Methods inherited from class org.apache.maven.plugins.enforcer.AbstractStandardEnforcerRule
getLevel, getMessage, setLevel, setMessage
-
Constructor Details
-
BanDuplicatePomDependencyVersions
public BanDuplicatePomDependencyVersions()
-
-
Method Details
-
execute
Description copied from interface:EnforcerRule
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 if it should stop or just log the message as a warning.- Parameters:
helper
- The helper provides access to the log, MavenSession and has helpers to get common components. It is also able to lookup components by class name.- Throws:
EnforcerRuleException
- the enforcer rule exception
-
maven2Validation
private void maven2Validation(EnforcerRuleHelper helper, org.apache.maven.model.Model model) throws EnforcerRuleException - Throws:
EnforcerRuleException
-
messageBuilder
private void messageBuilder(Map<String, Integer> duplicateDependencies, String prefix, StringBuilder message) -
validateDependencies
private Map<String,Integer> validateDependencies(List<org.apache.maven.model.Dependency> dependencies) throws EnforcerRuleException - Throws:
EnforcerRuleException
-