You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by br...@apache.org on 2008/03/10 19:46:30 UTC

svn commit: r635645 - /maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactCollector.java

Author: brianf
Date: Mon Mar 10 11:46:27 2008
New Revision: 635645

URL: http://svn.apache.org/viewvc?rev=635645&view=rev
Log:
MNG-2861: intermediate fix to produce better logging than an NPE

Modified:
    maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactCollector.java

Modified: maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactCollector.java
URL: http://svn.apache.org/viewvc/maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactCollector.java?rev=635645&r1=635644&r2=635645&view=diff
==============================================================================
--- maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactCollector.java (original)
+++ maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactCollector.java Mon Mar 10 11:46:27 2008
@@ -220,8 +220,18 @@
                                     }
                                 }
                                 //end hack
-                                resetArtifact.selectVersion( resetArtifact.getVersionRange().matchVersion(
-                                                                                                           resetArtifact.getAvailableVersions() ).toString() );
+                               
+                                //MNG-2861: match version can return null
+                                ArtifactVersion selectedVersion = resetArtifact.getVersionRange().matchVersion( resetArtifact.getAvailableVersions() );
+                                if (selectedVersion != null)
+                                {
+                                  resetArtifact.selectVersion( selectedVersion.toString() );
+                                }
+                                else
+                                {
+                                  throw new OverConstrainedVersionException(" Unable to find a version in "+ resetArtifact.getAvailableVersions()+" to match the range "+ resetArtifact.getVersionRange(), resetArtifact);
+                                }
+                                
                                 fireEvent( ResolutionListener.SELECT_VERSION_FROM_RANGE, listeners, resetNodes[j] );
                             }
                         }