[ http://jira.codehaus.org/browse/MNG-4724?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Benjamin Bentmann updated MNG-4724: ----------------------------------- Component/s: (was: Integration Tests) Plugins and Lifecycle Dependencies Artifacts and Repositories > Plugin runtime classpath during execution differs from runtime classpath > during building when conflicts with test/provided scope dependencies are > involved > ---------------------------------------------------------------------------------------------------------------------------------------------------------- > > Key: MNG-4724 > URL: http://jira.codehaus.org/browse/MNG-4724 > Project: Maven 2 & 3 > Issue Type: Bug > Components: Artifacts and Repositories, Dependencies, Plugins and > Lifecycle > Affects Versions: 2.2.1, 3.0-beta-1 > Reporter: Benjamin Bentmann > Priority: Minor > Attachments: mng-4724.zip > > > Consider this unresolved dependency tree: > {noformat} > plugin > +- b:0.1:test > | \- a:0.2:compile > \- c:0.1:compile > +- a:0.1:compile > \- b:0.1:compile > \- a:0.2:compile > {noformat} > which resolves to > {noformat} > [INFO] [dependency:tree {execution: default-cli}] > [INFO] org.apache.maven.its.mng4724:maven-mng4724-plugin:maven-plugin:0.1 > [INFO] +- org.apache.maven.its.mng4724:b:jar:0.1:test (scope not updated to > compile) > [INFO] \- org.apache.maven.its.mng4724:c:jar:0.1:compile > [INFO] \- org.apache.maven.its.mng4724:a:jar:0.2:compile > {noformat} > i.e. while building the plugin, the runtime class path consists of > {{c-0.1.jar}} and {{a-0.2.jar}}. > In contrast, when executing the plugin, the resolved tree looks like > {noformat} > [INFO] org.apache.maven.its.mng4724:maven-mng4724-plugin:maven-plugin:0.1 > [INFO] \- org.apache.maven.its.mng4724:c:jar:0.1:compile > [INFO] +- org.apache.maven.its.mng4724:a:jar:0.1:compile > [INFO] \- org.apache.maven.its.mng4724:b:jar:0.1:compile > {noformat} > i.e. {{b-0.1.jar}} is now included and instead of {{a-0.2.jar}} we get > {{a-0.1.jar}}. > The cause is that in the latter case the test-scope dependency on b (and its > dependency sub tree) wasn't considered at all during resolution, which hides > a conflict from the process and yields a different result. > Besides the plugin class realm, this generally affects the consumption of one > project by another. > IT attached, though given the apparently minor relevance for practical use > and the performance loss the fix would cause, not sure we actually want to > fix this... -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira