You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by jd...@apache.org on 2006/02/21 07:40:39 UTC
svn commit: r379372 - in /maven/components/branches/maven-2.0.x:
maven-artifact-manager/src/main/java/org/apache/maven/artifact/resolver/
maven-artifact/src/main/java/org/apache/maven/artifact/resolver/
Author: jdcasey
Date: Mon Feb 20 22:40:38 2006
New Revision: 379372
URL: http://svn.apache.org/viewcvs?rev=379372&view=rev
Log:
(merged from rev: 379369)
Original URL: http://svn.apache.org/viewcvs?rev=379369&view=rev
[MNG-2083] Added new exception, MultipleArtifactsNotFoundException, to account for cases where multiple artifacts are missing during transitive resolution. This will handle formatting, including downloadUrl and install instructions, for each missing artifact.
Added:
maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/MultipleArtifactsNotFoundException.java
- copied unchanged from r379369, maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/MultipleArtifactsNotFoundException.java
Modified:
maven/components/branches/maven-2.0.x/maven-artifact-manager/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactResolver.java
maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/AbstractArtifactResolutionException.java
maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/ArtifactNotFoundException.java
Modified: maven/components/branches/maven-2.0.x/maven-artifact-manager/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactResolver.java
URL: http://svn.apache.org/viewcvs/maven/components/branches/maven-2.0.x/maven-artifact-manager/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactResolver.java?rev=379372&r1=379371&r2=379372&view=diff
==============================================================================
--- maven/components/branches/maven-2.0.x/maven-artifact-manager/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactResolver.java (original)
+++ maven/components/branches/maven-2.0.x/maven-artifact-manager/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactResolver.java Mon Feb 20 22:40:38 2006
@@ -241,14 +241,15 @@
if ( missingArtifacts.size() > 0 )
{
- String message = "required artifacts missing:\n";
- for( Iterator i=missingArtifacts.iterator(); i.hasNext(); )
- {
- Artifact missingArtifact = (Artifact) i.next();
- message += " " + missingArtifact.getId() + "\n";
- }
- message += "\nfor the artifact:";
- throw new ArtifactResolutionException( message, originatingArtifact, remoteRepositories );
+ throw new MultipleArtifactsNotFoundException( originatingArtifact, missingArtifacts, remoteRepositories );
+// String message = "required artifacts missing:\n";
+// for ( Iterator i = missingArtifacts.iterator(); i.hasNext(); )
+// {
+// Artifact missingArtifact = (Artifact) i.next();
+// message += " " + missingArtifact.getId() + "\n";
+// }
+// message += "\nfor the artifact:";
+// throw new ArtifactResolutionException( message, originatingArtifact, remoteRepositories );
}
return artifactResolutionResult;
@@ -271,4 +272,4 @@
remoteRepositories, source, null, listeners );
}
-}
\ No newline at end of file
+}
Modified: maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/AbstractArtifactResolutionException.java
URL: http://svn.apache.org/viewcvs/maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/AbstractArtifactResolutionException.java?rev=379372&r1=379371&r2=379372&view=diff
==============================================================================
--- maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/AbstractArtifactResolutionException.java (original)
+++ maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/AbstractArtifactResolutionException.java Mon Feb 20 22:40:38 2006
@@ -59,7 +59,7 @@
this.type = type;
this.version = version;
this.remoteRepositories = remoteRepositories;
- this.path = constructArtifactPath( path );
+ this.path = constructArtifactPath( path, "" );
}
protected AbstractArtifactResolutionException( String message, String groupId, String artifactId, String version,
@@ -73,7 +73,7 @@
this.type = type;
this.version = version;
this.remoteRepositories = remoteRepositories;
- this.path = constructArtifactPath( path );
+ this.path = constructArtifactPath( path, "" );
}
protected AbstractArtifactResolutionException( String message, Artifact artifact )
@@ -124,18 +124,20 @@
return originalMessage;
}
- protected static String constructArtifactPath( List path )
+ protected static String constructArtifactPath( List path, String indentation )
{
StringBuffer sb = new StringBuffer();
if ( path != null )
{
sb.append( LS );
+ sb.append( indentation );
sb.append( "Path to dependency: " );
sb.append( LS );
int num = 1;
for ( Iterator i = path.iterator(); i.hasNext(); num++ )
{
+ sb.append( indentation );
sb.append( "\t" );
sb.append( num );
sb.append( ") " );
@@ -177,11 +179,53 @@
}
}
- sb.append( constructArtifactPath( path ) );
+ sb.append( constructArtifactPath( path, "" ) );
sb.append( LS );
return sb.toString();
}
+ protected static String constructMissingArtifactMessage( String message, String indentation, String groupId, String artifactId, String version,
+ String type, String downloadUrl, List path )
+ {
+ StringBuffer sb = new StringBuffer( message );
+
+ if ( downloadUrl != null && !"pom".equals( type ) )
+ {
+ sb.append( LS );
+ sb.append( LS );
+ sb.append( indentation );
+ sb.append( "Try downloading the file manually from" );
+ sb.append( LS );
+ sb.append( indentation );
+ sb.append( " " );
+ sb.append( downloadUrl );
+ sb.append( LS );
+ sb.append( LS );
+ sb.append( indentation );
+ sb.append( "Then, install it using the command: " );
+ sb.append( LS );
+ sb.append( indentation );
+ sb.append( " mvn install:install-file -DgroupId=" );
+ sb.append( groupId );
+ sb.append( " -DartifactId=" );
+ sb.append( artifactId );
+ sb.append( " \\\n");
+ sb.append( indentation );
+ sb.append( " " );
+ sb.append( "-Dversion=" );
+ sb.append( version );
+ sb.append( " -Dpackaging=" );
+ sb.append( type );
+ sb.append( " -Dfile=/path/to/file" );
+ sb.append( LS );
+ }
+
+ sb.append( constructArtifactPath( path, indentation ) );
+ sb.append( LS );
+
+ return sb.toString();
+ }
+
public String getArtifactPath()
{
return path;
Modified: maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/ArtifactNotFoundException.java
URL: http://svn.apache.org/viewcvs/maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/ArtifactNotFoundException.java?rev=379372&r1=379371&r2=379372&view=diff
==============================================================================
--- maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/ArtifactNotFoundException.java (original)
+++ maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/ArtifactNotFoundException.java Mon Feb 20 22:40:38 2006
@@ -28,7 +28,12 @@
extends AbstractArtifactResolutionException
{
private String downloadUrl;
-
+
+ protected ArtifactNotFoundException( String message, Artifact artifact, List remoteRepositories )
+ {
+ super( message, artifact, remoteRepositories );
+ }
+
public ArtifactNotFoundException( String message, Artifact artifact )
{
this( message, artifact.getGroupId(), artifact.getArtifactId(), artifact.getVersion(), artifact.getType(), null,
@@ -44,7 +49,7 @@
public ArtifactNotFoundException( String message, String groupId, String artifactId, String version, String type,
List remoteRepositories, String downloadUrl, List path, Throwable t )
{
- super( constructMessage( message, groupId, artifactId, version, type, downloadUrl, path ), groupId, artifactId,
+ super( constructMissingArtifactMessage( message, "", groupId, artifactId, version, type, downloadUrl, path ), groupId, artifactId,
version, type, remoteRepositories, null, t );
this.downloadUrl = downloadUrl;
@@ -53,42 +58,10 @@
private ArtifactNotFoundException( String message, String groupId, String artifactId, String version, String type,
List remoteRepositories, String downloadUrl, List path )
{
- super( constructMessage( message, groupId, artifactId, version, type, downloadUrl, path ), groupId, artifactId,
+ super( constructMissingArtifactMessage( message, "", groupId, artifactId, version, type, downloadUrl, path ), groupId, artifactId,
version, type, remoteRepositories, null );
this.downloadUrl = downloadUrl;
- }
-
- private static String constructMessage( String message, String groupId, String artifactId, String version,
- String type, String downloadUrl, List path )
- {
- StringBuffer sb = new StringBuffer( message );
-
- if ( downloadUrl != null && !"pom".equals( type ) )
- {
- sb.append( LS );
- sb.append( LS );
- sb.append( "Try downloading the file manually from" );
- sb.append( LS );
- sb.append( " " );
- sb.append( downloadUrl );
- sb.append( LS );
- sb.append( "and install it using the command: " );
- sb.append( LS );
- sb.append( " mvn install:install-file -DgroupId=" );
- sb.append( groupId );
- sb.append( " -DartifactId=" );
- sb.append( artifactId );
- sb.append( " -Dversion=" );
- sb.append( version );
- sb.append( " -Dpackaging=" );
- sb.append( type );
- sb.append( " -Dfile=/path/to/file" );
- }
-
- sb.append( constructArtifactPath( path ) );
- sb.append( LS );
- return sb.toString();
}
public String getDownloadUrl()