Repository: maven
Updated Branches:
  refs/heads/master ff5d215b5 -> bbffde98f


[MNG-6135] Maven plugins and core extensions are not dependencies, they should 
be resolved the same way as projects.

o Updated to log plugin resolution results the same way project resolution
  results are logged (including management information).


Project: http://git-wip-us.apache.org/repos/asf/maven/repo
Commit: http://git-wip-us.apache.org/repos/asf/maven/commit/bbffde98
Tree: http://git-wip-us.apache.org/repos/asf/maven/tree/bbffde98
Diff: http://git-wip-us.apache.org/repos/asf/maven/diff/bbffde98

Branch: refs/heads/master
Commit: bbffde98fdf3c46d7698c300ca074ed980fa921e
Parents: ff5d215
Author: Christian Schulte <[email protected]>
Authored: Sun Dec 18 05:04:40 2016 +0100
Committer: Christian Schulte <[email protected]>
Committed: Sun Dec 18 05:06:01 2016 +0100

----------------------------------------------------------------------
 .../DefaultPluginDependenciesResolver.java      | 32 +++++++++++++++++---
 1 file changed, 28 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/bbffde98/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginDependenciesResolver.java
----------------------------------------------------------------------
diff --git 
a/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginDependenciesResolver.java
 
b/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginDependenciesResolver.java
index 609df1b..25d582d 100644
--- 
a/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginDependenciesResolver.java
+++ 
b/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginDependenciesResolver.java
@@ -57,6 +57,7 @@ import 
org.eclipse.aether.resolution.DependencyResolutionException;
 import org.eclipse.aether.util.artifact.JavaScopes;
 import org.eclipse.aether.util.filter.AndDependencyFilter;
 import org.eclipse.aether.util.filter.ScopeDependencyFilter;
+import org.eclipse.aether.util.graph.manager.DependencyManagerUtils;
 import org.eclipse.aether.util.graph.selector.AndDependencySelector;
 import org.eclipse.aether.util.graph.selector.ExclusionDependencySelector;
 import 
org.eclipse.aether.util.graph.transformer.ChainedDependencyGraphTransformer;
@@ -342,23 +343,46 @@ public class DefaultPluginDependenciesResolver
         }
     }
 
+    // Keep this class in sync with 
org.apache.maven.project.DefaultProjectDependenciesResolver.GraphLogger
     class GraphLogger
         implements DependencyVisitor
     {
 
         private String indent = "";
 
+        GraphLogger()
+        {
+            super();
+        }
+
         public boolean visitEnter( DependencyNode node )
         {
+            assert node.getDependency() != null : "Unexpected POM resolution 
result.";
+
             StringBuilder buffer = new StringBuilder( 128 );
             buffer.append( indent );
             org.eclipse.aether.graph.Dependency dep = node.getDependency();
-            if ( dep != null )
+            org.eclipse.aether.artifact.Artifact art = dep.getArtifact();
+
+            buffer.append( art );
+            buffer.append( ':' ).append( dep.getScope() );
+
+            String premanagedScope = 
DependencyManagerUtils.getPremanagedScope( node );
+            if ( premanagedScope != null && !premanagedScope.equals( 
dep.getScope() ) )
             {
-                Artifact art = dep.getArtifact();
+                buffer.append( " (scope managed from " ).append( 
premanagedScope ).append( ')' );
+            }
 
-                buffer.append( art );
-                buffer.append( ':' ).append( dep.getScope() );
+            String premanagedVersion = 
DependencyManagerUtils.getPremanagedVersion( node );
+            if ( premanagedVersion != null && !premanagedVersion.equals( 
art.getVersion() ) )
+            {
+                buffer.append( " (version managed from " ).append( 
premanagedVersion ).append( ')' );
+            }
+
+            Boolean premanagedOptional = 
DependencyManagerUtils.getPremanagedOptional( node );
+            if ( premanagedOptional != null && !premanagedOptional.equals( 
dep.getOptional() ) )
+            {
+                buffer.append( " (optionality managed from " ).append( 
premanagedOptional ).append( ')' );
             }
 
             logger.debug( buffer.toString() );

Reply via email to