You are viewing a plain text version of this content. The canonical link for it is here.
Posted to m2-dev@maven.apache.org by br...@apache.org on 2005/03/17 01:17:27 UTC
cvs commit: maven-components/maven-artifact/src/main/java/org/apache/maven/artifact/resolver DefaultArtifactResolver.java
brett 2005/03/16 16:17:26
Modified: maven-artifact/src/main/java/org/apache/maven/artifact/resolver
DefaultArtifactResolver.java
Log:
PR: MNG-207
fix scope issue in a conflict
Revision Changes Path
1.18 +43 -20 maven-components/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactResolver.java
Index: DefaultArtifactResolver.java
===================================================================
RCS file: /home/cvs/maven-components/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactResolver.java,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- DefaultArtifactResolver.java 15 Mar 2005 21:41:04 -0000 1.17
+++ DefaultArtifactResolver.java 17 Mar 2005 00:17:26 -0000 1.18
@@ -2,6 +2,7 @@
import org.apache.maven.artifact.AbstractArtifactComponent;
import org.apache.maven.artifact.Artifact;
+import org.apache.maven.artifact.DefaultArtifact;
import org.apache.maven.artifact.handler.manager.ArtifactHandlerNotFoundException;
import org.apache.maven.artifact.manager.WagonManager;
import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
@@ -23,7 +24,7 @@
/**
* @todo get rid of {@link AbstractArtifactComponent}and then create an
- * AbstractArtifactResolver that does the transitive boilerplate
+ * AbstractArtifactResolver that does the transitive boilerplate
*/
public class DefaultArtifactResolver
extends AbstractArtifactComponent
@@ -62,10 +63,9 @@
try
{
Logger logger = getLogger();
- logger.debug("Resolving: " + artifact.getId() + " from:\n" +
- "{localRepository: " + localRepository + "}\n" +
- "{remoteRepositories: " + remoteRepositories + "}");
-
+ logger.debug( "Resolving: " + artifact.getId() + " from:\n" + "{localRepository: " + localRepository +
+ "}\n" + "{remoteRepositories: " + remoteRepositories + "}" );
+
setLocalRepositoryPath( artifact, localRepository );
if ( artifact.exists() )
@@ -93,15 +93,8 @@
{
StringBuffer sb = new StringBuffer();
- sb.append( "The artifact is not present locally as:" )
- .append( LS )
- .append( LS )
- .append( artifact.getPath() )
- .append( LS )
- .append( LS )
- .append( "or in any of the specified remote repositories:" )
- .append( LS )
- .append( LS );
+ sb.append( "The artifact is not present locally as:" ).append( LS ).append( LS ).append( artifact.getPath() ).append(
+ LS ).append( LS ).append( "or in any of the specified remote repositories:" ).append( LS ).append( LS );
for ( Iterator i = remoteRepositories.iterator(); i.hasNext(); )
{
@@ -139,7 +132,8 @@
// ----------------------------------------------------------------------
public ArtifactResolutionResult resolveTransitively( Set artifacts, List remoteRepositories,
- ArtifactRepository localRepository, ArtifactMetadataSource source, ArtifactFilter filter )
+ ArtifactRepository localRepository,
+ ArtifactMetadataSource source, ArtifactFilter filter )
throws ArtifactResolutionException
{
ArtifactResolutionResult artifactResolutionResult;
@@ -162,13 +156,17 @@
}
public ArtifactResolutionResult resolveTransitively( Set artifacts, List remoteRepositories,
- ArtifactRepository localRepository, ArtifactMetadataSource source ) throws ArtifactResolutionException
+ ArtifactRepository localRepository,
+ ArtifactMetadataSource source )
+ throws ArtifactResolutionException
{
return resolveTransitively( artifacts, remoteRepositories, localRepository, source, null );
}
public ArtifactResolutionResult resolveTransitively( Artifact artifact, List remoteRepositories,
- ArtifactRepository localRepository, ArtifactMetadataSource source ) throws ArtifactResolutionException
+ ArtifactRepository localRepository,
+ ArtifactMetadataSource source )
+ throws ArtifactResolutionException
{
return resolveTransitively( Collections.singleton( artifact ), remoteRepositories, localRepository, source );
}
@@ -178,7 +176,8 @@
// ----------------------------------------------------------------------
private ArtifactResolutionResult collect( Set artifacts, ArtifactRepository localRepository,
- List remoteRepositories, ArtifactMetadataSource source, ArtifactFilter filter )
+ List remoteRepositories, ArtifactMetadataSource source,
+ ArtifactFilter filter )
throws TransitiveArtifactResolutionException
{
ArtifactResolutionResult result = new ArtifactResolutionResult();
@@ -211,6 +210,30 @@
{
addConflict( result, knownArtifact, newArtifact );
}
+
+ // TODO: scope handler
+ boolean updateScope = false;
+ if ( Artifact.SCOPE_RUNTIME.equals( newArtifact.getScope() ) &&
+ Artifact.SCOPE_TEST.equals( knownArtifact.getScope() ) )
+ {
+ updateScope = true;
+ }
+
+ if ( Artifact.SCOPE_COMPILE.equals( newArtifact.getScope() ) &&
+ !Artifact.SCOPE_COMPILE.equals( knownArtifact.getScope() ) )
+ {
+ updateScope = true;
+ }
+
+ if ( updateScope )
+ {
+ // TODO: Artifact factory?
+ Artifact artifact = new DefaultArtifact( knownArtifact.getGroupId(),
+ knownArtifact.getArtifactId(), knownVersion,
+ newArtifact.getScope(), knownArtifact.getType(),
+ knownArtifact.getExtension() );
+ resolvedArtifacts.put( artifact.getConflictId(), artifact );
+ }
}
else
{
@@ -233,8 +256,8 @@
}
catch ( ArtifactMetadataRetrievalException e )
{
- throw new TransitiveArtifactResolutionException( "Error retrieving metadata [" + newArtifact
- + "] : ", e );
+ throw new TransitiveArtifactResolutionException( "Error retrieving metadata [" + newArtifact +
+ "] : ", e );
}
// the pom for given dependency exisit we will add it to the