[ http://jira.codehaus.org/browse/MNG-2326?page=comments#action_66449 ]
Andreas Schildbach commented on MNG-2326: ----------------------------------------- Because I don't need T in M. However, I can never be sure that D2 (or D3, ...) needs it. It's the concept of responsibility that I don't need to know about the transitive dependencies of my dependencies. Also, it could be the case that a dependency gets a new version, which now depends on T, but I never learn about it because it is excluded. In any case, the current (expected?) behaviour is not enough documented. Thus, I am re-opening this issue. You can count it as a documentation bug or a wishlist item. > exclusion of transitive dependency is too dominant > -------------------------------------------------- > > Key: MNG-2326 > URL: http://jira.codehaus.org/browse/MNG-2326 > Project: Maven 2 > Type: Bug > Components: Dependencies > Versions: 2.0.4 > Reporter: Andreas Schildbach > Assignee: Carlos Sanchez > Attachments: mng2326.zip > > > Please consider the following structure: I've got a module M that has got the > dependencies D1 and D2. Both D1 and D2 depend on a transitive dependency T. > I have excluded T from D1 per <exclusion> on the M POM in the dependency to > D1. > Now, one would expect that T is still pulled into M, because there is no > exclusion on the D2 path. But this is not the case, "mvn site" on M is > missing T (in the dependency report), and it is missing from the classpath, > too. However "mvn eclipse:eclipse" on M does the job right: T is listed. -- 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