maven-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "William Ferguson (JIRA)" <j...@codehaus.org>
Subject [jira] Created: (MDEP-123) dependency:tree to optionally display all instances of a transitive dependency, not just the first one found
Date Thu, 06 Dec 2007 23:38:57 GMT
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

        

Mime
View raw message