You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by be...@apache.org on 2009/06/13 19:32:12 UTC
svn commit: r784438 - in /maven/components/trunk:
maven-compat/src/main/java/org/apache/maven/artifact/ArtifactUtils.java
maven-core/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java
Author: bentmann
Date: Sat Jun 13 17:32:12 2009
New Revision: 784438
URL: http://svn.apache.org/viewvc?rev=784438&view=rev
Log:
o Fixed handling of version ranges
Modified:
maven/components/trunk/maven-compat/src/main/java/org/apache/maven/artifact/ArtifactUtils.java
maven/components/trunk/maven-core/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java
Modified: maven/components/trunk/maven-compat/src/main/java/org/apache/maven/artifact/ArtifactUtils.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-compat/src/main/java/org/apache/maven/artifact/ArtifactUtils.java?rev=784438&r1=784437&r2=784438&view=diff
==============================================================================
--- maven/components/trunk/maven-compat/src/main/java/org/apache/maven/artifact/ArtifactUtils.java (original)
+++ maven/components/trunk/maven-compat/src/main/java/org/apache/maven/artifact/ArtifactUtils.java Sat Jun 13 17:32:12 2009
@@ -137,7 +137,10 @@
clone.setFile( artifact.getFile() );
clone.setAvailableVersions( copyList( artifact.getAvailableVersions() ) );
- clone.setBaseVersion( artifact.getBaseVersion() );
+ if ( artifact.getVersion() != null )
+ {
+ clone.setBaseVersion( artifact.getBaseVersion() );
+ }
clone.setDependencyFilter( artifact.getDependencyFilter() );
clone.setDependencyTrail( copyList( artifact.getDependencyTrail() ) );
clone.setDownloadUrl( artifact.getDownloadUrl() );
Modified: maven/components/trunk/maven-core/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-core/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java?rev=784438&r1=784437&r2=784438&view=diff
==============================================================================
--- maven/components/trunk/maven-core/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java (original)
+++ maven/components/trunk/maven-core/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java Sat Jun 13 17:32:12 2009
@@ -39,6 +39,8 @@
import org.apache.maven.artifact.resolver.filter.ExcludesArtifactFilter;
import org.apache.maven.artifact.versioning.ArtifactVersion;
import org.apache.maven.artifact.versioning.DefaultArtifactVersion;
+import org.apache.maven.artifact.versioning.InvalidVersionSpecificationException;
+import org.apache.maven.artifact.versioning.VersionRange;
import org.apache.maven.model.Dependency;
import org.apache.maven.model.Exclusion;
import org.apache.maven.project.DefaultProjectBuildingRequest;
@@ -149,17 +151,21 @@
{
Artifact dependencyArtifact;
- //TODO: deal with this in a unified way, probably just looking at the dependency.
- if ( d.getClassifier() != null )
+ VersionRange versionRange;
+ try
{
- dependencyArtifact = repositorySystem.createArtifactWithClassifier( d.getGroupId(), d.getArtifactId(), d.getVersion(), d.getType(), d.getClassifier() );
+ versionRange = VersionRange.createFromVersionSpec( d.getVersion() );
}
- else
+ catch ( InvalidVersionSpecificationException e )
{
- dependencyArtifact = repositorySystem.createArtifact( d.getGroupId(), d.getArtifactId(), d.getVersion(), effectiveScope, d.getType() );
+ throw new ArtifactMetadataRetrievalException( "Invalid version for dependency "
+ + d.getManagementKey() + ": " + e.getMessage(), e, pomArtifact );
}
- dependencyArtifact.setScope( effectiveScope );
+ dependencyArtifact =
+ repositorySystem.createDependencyArtifact( d.getGroupId(), d.getArtifactId(), versionRange,
+ d.getType(), d.getClassifier(), effectiveScope,
+ d.isOptional() );
if ( dependencyFilter == null || dependencyFilter.include( dependencyArtifact ) )
{
@@ -252,7 +258,7 @@
}
catch ( RepositoryMetadataResolutionException e )
{
- throw new ArtifactMetadataRetrievalException( e.getMessage(), e );
+ throw new ArtifactMetadataRetrievalException( e.getMessage(), e, artifact );
}
return retrieveAvailableVersionsFromMetadata( metadata.getMetadata() );
@@ -268,7 +274,7 @@
}
catch ( RepositoryMetadataResolutionException e )
{
- throw new ArtifactMetadataRetrievalException( e.getMessage(), e );
+ throw new ArtifactMetadataRetrievalException( e.getMessage(), e, artifact );
}
return retrieveAvailableVersionsFromMetadata( metadata.getMetadata() );