Author: bentmann Date: Thu Aug 6 18:30:33 2009 New Revision: 801760 URL: http://svn.apache.org/viewvc?rev=801760&view=rev Log: [MNG-3769] [regression] Excluding relocated transitive dependencies does not work
o Merged from r736543 Modified: maven/components/trunk/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/DefaultLegacyArtifactCollector.java Modified: maven/components/trunk/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/DefaultLegacyArtifactCollector.java URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/DefaultLegacyArtifactCollector.java?rev=801760&r1=801759&r2=801760&view=diff ============================================================================== --- maven/components/trunk/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/DefaultLegacyArtifactCollector.java (original) +++ maven/components/trunk/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/DefaultLegacyArtifactCollector.java Thu Aug 6 18:30:33 2009 @@ -382,6 +382,8 @@ { fireEvent( ResolutionListener.PROCESS_CHILDREN, listeners, node ); + Artifact parentArtifact = node.getArtifact(); + for ( Iterator i = node.getChildrenIterator(); i.hasNext(); ) { ResolutionNode child = (ResolutionNode) i.next(); @@ -493,6 +495,17 @@ } while( !childKey.equals( child.getKey() ) ); + if ( parentArtifact != null && parentArtifact.getDependencyFilter() != null + && !parentArtifact.getDependencyFilter().include( artifact ) ) + { + // MNG-3769: the [probably relocated] artifact is excluded. + // We could process exclusions on relocated artifact details in the + // MavenMetadataSource.createArtifacts(..) step, BUT that would + // require resolving the POM from the repository very early on in + // the build. + continue; + } + artifact.setDependencyTrail( node.getDependencyTrail() ); ResolutionGroup rGroup = source.retrieve( artifact, localRepository, childRemoteRepositories );