You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "William Ferguson (JIRA)" <ji...@codehaus.org> on 2007/12/07 00:38:57 UTC

[jira] Updated: (MDEP-123) dependency:tree to optionally display all instances of a transitive dependency, not just the first one found

     [ http://jira.codehaus.org/browse/MDEP-123?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

William Ferguson updated MDEP-123:
----------------------------------

    Attachment: pom.xml

> dependency:tree to optionally display all instances of a transitive dependency, not just the first one found
> ------------------------------------------------------------------------------------------------------------
>
>                 Key: MDEP-123
>                 URL: http://jira.codehaus.org/browse/MDEP-123
>             Project: Maven 2.x Dependency Plugin
>          Issue Type: New Feature
>          Components: tree
>    Affects Versions: 2.0-alpha-5
>            Reporter: William Ferguson
>            Assignee: Brian Fox
>         Attachments: pom.xml
>
>
> dependency:tree is *really* useful for tracking down how a particular transitive dependency has been introduced, but it only lists the first occurrence, not all occurrences. So it can be frustrating game attempting to remove a dep only to find it introduced by another component. A parameter to dependency:tree to show all occurences of a transitive dep would be *really* helpful.
> Eg the attached POM has a direct dep on commons-beanutils and commons-digester, which both have a dep on commons-logging. But executing
> {code}
> mvn org.apache.maven.plugins:maven-dependency-plugin:2.0-alpha-5-SNAPSHOT:tree
> {code}
> only shows commons-logging listed as a transitive dep  for commons-beanutils, not commons-digester, Ie
> {code}
> [INFO] [dependency:tree]
> [INFO] maven-dependency-plugin-tree-all-deps:maven-dependency-plugin-tree-all-deps:jar:0.0.1
> [INFO] +- commons-beanutils:commons-beanutils:jar:1.7.0:compile
> [INFO] |  \- commons-logging:commons-logging:jar:1.0.3:compile
> [INFO] \- commons-digester:commons-digester:jar:1.7:compile
> [INFO]    +- commons-collections:commons-collections:jar:2.1:compile
> [INFO]    \- xml-apis:xml-apis:jar:1.0.b2:compile
> [INFO] ------------------------------------------------------------------------
> [INFO] BUILD SUCCESSFUL
> [INFO] ------------------------------------------------------------------------
> {code}
> but if an exclusion is added to commons-beanutils for for commons-logging, then the other transitive dep instance is revealed. Ie
> {code}
> [INFO] [dependency:tree]
> [INFO] maven-dependency-plugin-tree-all-deps:maven-dependency-plugin-tree-all-deps:jar:0.0.1
> [INFO] +- commons-beanutils:commons-beanutils:jar:1.7.0:compile
> [INFO] \- commons-digester:commons-digester:jar:1.7:compile
> [INFO]    +- commons-logging:commons-logging:jar:1.0:compile
> [INFO]    +- commons-collections:commons-collections:jar:2.1:compile
> [INFO]    \- xml-apis:xml-apis:jar:1.0.b2:compile
> [INFO] ------------------------------------------------------------------------
> [INFO] BUILD SUCCESSFUL
> [INFO] ------------------------------------------------------------------------
> {code}
> An option to show both instance would be fantastic, Eg
> {code}
> [INFO] [dependency:tree]
> [INFO] maven-dependency-plugin-tree-all-deps:maven-dependency-plugin-tree-all-deps:jar:0.0.1
> [INFO] +- commons-beanutils:commons-beanutils:jar:1.7.0:compile
> [INFO] |  \- commons-logging:commons-logging:jar:1.0.3:compile
> [INFO] \- commons-digester:commons-digester:jar:1.7:compile
> [INFO]    +- commons-logging:commons-logging:jar:1.0:compile
> [INFO]    +- commons-collections:commons-collections:jar:2.1:compile
> [INFO]    \- xml-apis:xml-apis:jar:1.0.b2:compile
> [INFO] ------------------------------------------------------------------------
> [INFO] BUILD SUCCESSFUL
> [INFO] ------------------------------------------------------------------------
> {code}

-- 
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