yes, the behaviour is known - probably not from many people, but I do know it was a consequence of maven-dependency-tree-2.0 MSHARED-167
I wouldn't say "intentional", but that's a consequence of using Aether in Maven 3 instead of tracking internal Maven 2 dependency resolution events. Maven 3/Aether has totally changed the dependency resolution algorithm, and such resolution info is not available to Maven core any more. When Benjamin worked on Aether, he gabve some info on this topic, with the global algorithm change that would not give such info even with Aether, but I didn't really understand nor investigated at that time. Notice that I'm sure that it has to do with "conflict resolution" needed for MNG-3092, so I should work on it and learn what I still didn't understand for the moment. I hope that when I understand the conflict resolution algorithm and code, I'll be able to find a way to track this info and report it to m- dependency-p. I'm open to any help on this topic, since I know it won't be easy :) Regards, Hervé Le jeudi 8 novembre 2012 19:07:19 Karl Heinz Marbaise a écrit : > Hi, > > i've played around with the maven-dependency-plugin to see which > artifacts are in my project via: > > mvn dependency:tree -Dverbose=true > > which results into the following output: > > ..... > [INFO] > [INFO] --- maven-dependency-plugin:2.1:tree (default-cli) @ > first-project --- > [INFO] com.soebes.training.test:first-project:jar:1.0-SNAPSHOT > [INFO] +- junit:junit:jar:4.8:compile > [INFO] \- org.testng:testng:jar:6.5.2:compile > [INFO] +- (junit:junit:jar:4.10:compile - omitted for conflict with 4.8) > [INFO] +- org.beanshell:bsh:jar:2.0b4:compile > [INFO] +- com.beust:jcommander:jar:1.12:compile > [INFO] \- org.yaml:snakeyaml:jar:1.6:compile > [INFO] > > The output above says that the transitive dependency of testng > junit:junit:jar:4.10 has not made the way into my project, cause i > defined an other version (4.8). > > Ok. Now i checked to use the newest version maven-dependency-plugin via > the following call: > > mvn org.apache.maven.plugins:maven-dependency-plugin:2.5.1:tree > -Dverbose=true > > which produces the following output: > > .... > [INFO] --- maven-dependency-plugin:2.5.1:tree (default-cli) @ > first-project --- > [INFO] com.soebes.training.test:first-project:jar:1.0-SNAPSHOT > [INFO] +- junit:junit:jar:4.8:compile > [INFO] \- org.testng:testng:jar:6.5.2:compile > [INFO] +- org.beanshell:bsh:jar:2.0b4:compile > [INFO] +- com.beust:jcommander:jar:1.12:compile > [INFO] \- org.yaml:snakeyaml:jar:1.6:compile > [INFO] > > which prints out information, but NOT the information about the clash of > the version as in the older version of the > maven-dependency-plugin....and in my opinion wrong output, cause missing > the transitive dependency of testng. > > After rereading the docs of the dependency-plugin i found that the > option -Dverbose=true is deprecated and tested it without but this > doesn't change anything. > > > So the question is: Is this behaviour known and intentionally ? > > Kind regards > Karl-Heinz Marbaise --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
