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/05/05 00:41:23 UTC
svn commit: r771481 - in /maven/components/branches/MNG-2766:
maven-compat/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactResolver.java
maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java
Author: bentmann
Date: Mon May 4 22:41:22 2009
New Revision: 771481
URL: http://svn.apache.org/viewvc?rev=771481&view=rev
Log:
o Fixed propagation of POM-level plugin dependencies to the plugin manager
Modified:
maven/components/branches/MNG-2766/maven-compat/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactResolver.java
maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java
Modified: maven/components/branches/MNG-2766/maven-compat/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactResolver.java
URL: http://svn.apache.org/viewvc/maven/components/branches/MNG-2766/maven-compat/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactResolver.java?rev=771481&r1=771480&r2=771481&view=diff
==============================================================================
--- maven/components/branches/MNG-2766/maven-compat/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactResolver.java (original)
+++ maven/components/branches/MNG-2766/maven-compat/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactResolver.java Mon May 4 22:41:22 2009
@@ -19,6 +19,8 @@
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collections;
+import java.util.LinkedHashMap;
+import java.util.LinkedHashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
@@ -424,8 +426,32 @@
if ( request.isResolveTransitively() )
{
try
- {
- artifacts = source.retrieve( rootArtifact, localRepository, remoteRepositories ).getArtifacts();
+ {
+ Set<Artifact> directArtifacts =
+ source.retrieve( rootArtifact, localRepository, remoteRepositories ).getArtifacts();
+
+ if ( artifacts == null || artifacts.isEmpty() )
+ {
+ artifacts = directArtifacts;
+ }
+ else
+ {
+ List<Artifact> allArtifacts = new ArrayList<Artifact>();
+ allArtifacts.addAll( artifacts );
+ allArtifacts.addAll( directArtifacts );
+
+ Map<String, Artifact> mergedArtifacts = new LinkedHashMap<String, Artifact>();
+ for ( Artifact artifact : allArtifacts )
+ {
+ String conflictId = artifact.getDependencyConflictId();
+ if ( !mergedArtifacts.containsKey( conflictId ) )
+ {
+ mergedArtifacts.put( conflictId, artifact );
+ }
+ }
+
+ artifacts = new LinkedHashSet<Artifact>( mergedArtifacts.values() );
+ }
}
catch ( ArtifactMetadataRetrievalException e )
{
Modified: maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java
URL: http://svn.apache.org/viewvc/maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java?rev=771481&r1=771480&r2=771481&view=diff
==============================================================================
--- maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java (original)
+++ maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java Mon May 4 22:41:22 2009
@@ -468,15 +468,15 @@
throw new LifecycleExecutionException( message );
}
- if ( plugin.getVersion() == null )
+ for ( Plugin buildPlugin : project.getBuildPlugins() )
{
- for ( Plugin buildPlugin : project.getBuildPlugins() )
+ if ( buildPlugin.getKey().equals( plugin.getKey() ) )
{
- if ( buildPlugin.getKey().equals( plugin.getKey() ) )
+ if ( plugin.getVersion() == null || plugin.getVersion().equals( buildPlugin.getVersion() ) )
{
plugin = buildPlugin;
- break;
}
+ break;
}
}