Enforcer does not allow to restrict based on SNAPSHOT version as version
comparison uses artifact.getVersion() instead of artifact.getBaseVersion()
---------------------------------------------------------------------------------------------------------------------------------------------------
Key: MENFORCER-101
URL: http://jira.codehaus.org/browse/MENFORCER-101
Project: Maven 2.x Enforcer Plugin
Issue Type: Bug
Components: Standard Rules
Affects Versions: 1.0-beta-1
Environment: Any
Reporter: Prashant Bhate
When following restriction is given to banned dependency rule, comparison fails
as it compare with actual snapshot version in the repository (which includes
timestamp 1.0-20100715.155142-18 ) instead of base version ( which has
1.0-SNAPSHOT )
{code:xml}
<build>
<plugins>
<plugin>
<artifactId>maven-enforcer-plugin</artifactId>
<executions>
<execution>
<id>enforce-snapshot-ver</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<bannedDependencies>
<searchTransitive>true</searchTransitive>
<excludes>
<exclude>org.apache.maven.enforcer:enforcer-rules</exclude>
</excludes>
<includes>
<include>org.apache.maven.enforcer:enforcer-rules:[1.0-beta-2-SNAPSHOT]</include>
</includes>
</bannedDependencies>
</rules>
<fail>true</fail>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
..
..
..
<dependencies>
<dependency>
<groupId>org.apache.maven.enforcer</groupId>
<artifactId>enforcer-rules</artifactId>
<version>1.0-beta-2-SNAPSHOT</version>
</dependency>
</dependencies>
{code}
See code snippet below
{code:title=BannedDependencies.java|borderStyle=solid}
try
{
result = AbstractVersionEnforcer.containsVersion(
VersionRange.createFromVersionSpec( pattern[2] ),
new DefaultArtifactVersion( artifact.getVersion() )
);
}
catch ( InvalidVersionSpecificationException e )
{
throw new EnforcerRuleException( "Invalid Version Range: ", e );
}
{code}
replace
{code}
new DefaultArtifactVersion( artifact.getVersion() )
{code}
with
{code}
new DefaultArtifactVersion( artifact.getBaseVersion() )
{code}
will solve this issue
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira