From b66d5c1b1d056c934cf70c97efd9ef5f0b9c2d66 Mon Sep 17 00:00:00 2001 From: ksomani Date: Fri, 29 Mar 2013 01:34:01 -0700 Subject: [PATCH] MNG-3092 : Version ranges with non-snapshot bounds can contain snapshot versions --- .../internal/DefaultVersionRangeResolver.java | 22 ++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultVersionRangeResolver.java b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultVersionRangeResolver.java index a7ff573bbca2..ba7f16b55688 100644 --- a/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultVersionRangeResolver.java +++ b/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/DefaultVersionRangeResolver.java @@ -74,7 +74,9 @@ public class DefaultVersionRangeResolver { private static final String MAVEN_METADATA_XML = "maven-metadata.xml"; - + + private static final String SNAPSHOT = "SNAPSHOT"; + @SuppressWarnings( "unused" ) @Requirement( role = LoggerFactory.class ) private Logger logger = NullLoggerFactory.LOGGER; @@ -254,10 +256,20 @@ private Map getVersions( RepositorySystemSession ses Versioning versioning = readVersions( session, trace, metadataResult.getMetadata(), repository, result ); for ( String version : versioning.getVersions() ) { - if ( !versionIndex.containsKey( version ) ) - { - versionIndex.put( version, repository ); - } + if(request.getArtifact().getVersion().toUpperCase().contains(SNAPSHOT)){ + if ( !versionIndex.containsKey( version ) ) + { + versionIndex.put( version, repository ); + } + } + else{ + if(!version.toUpperCase().contains(SNAPSHOT)){ + if ( !versionIndex.containsKey( version ) ) + { + versionIndex.put( version, repository ); + } + } + } } }