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

Brett Porter closed MNG-3696.
-----------------------------

    Resolution: Won't Fix

unless I misunderstand what you're saying, simply declaring the "inclusion" in 
dependency management as another dependency and omitting the exclusion will do 
what you need

> Add explicit transitive dependencies in dependencyManagement section of 
> pom.xml
> -------------------------------------------------------------------------------
>
>                 Key: MNG-3696
>                 URL: http://jira.codehaus.org/browse/MNG-3696
>             Project: Maven 2
>          Issue Type: New Feature
>          Components: Dependencies
>    Affects Versions: 2.0.9
>            Reporter: Joel Turkel
>
> Transitive dependencies cause lots of headaches and require a fair amount of 
> manual intervention to fix conflicts. It is common to see a pom with the 
> following scenario:
> <dependencyManagement>
>       <dependencies>
>               <!-- Must manually include com.other.common when using 
> com.sample.foo -->
>               <dependency>
>                       <groupId>com.sample</groupId>
>                       <artifactId>foo</artifactId>
>                       <version>1</version>
>                       <exclusions>
>                               <!-- com.sample.foo includes old version 1 of 
> com.other.common -->
>                               <exclusion>
>                                       <groupId>com.other</groupId>
>                                       <artifactId>common</artifactId>
>                               </exclusion>
>                       </exclusions>
>               </dependency>   
>               <dependency>
>                       <groupId>com.other</groupId>
>                       <artifactId>common</artifactId>
>                       <version>2</version>
>               </dependency>
>               <dependency>
>                       <groupId>com.sample</groupId>
>                       <artifactId>bar</artifactId>
>                       <version>3</version>
>                       <!-- com.sample.foo includes version 2 of 
> com.other.common -->
>               </dependency>
>       </dependencies>
> </dependencyManagement>
> This is problematic because descendant poms must manually include the 
> com.other.common dependency when including the com.sample.foo dependency. The 
> word around is creating separate pom projects to manage the dependencies, but 
> this doesn't do a great job of expressing intent, leads to a proliferation of 
> projects, and makes dependency management more difficult since it's scattered 
> over multiple poms. 
> Ideally users should be allowed to specify inclusions in the dependency 
> management section of the pom e.g. something like:
> <dependencyManagement>
>       <dependencies>
>               <dependency>
>                       <groupId>com.sample</groupId>
>                       <artifactId>foo</artifactId>
>                       <version>1</version>
>                       <!-- com.sample.foo includes old version 1 of 
> com.other.common -->
>                       <exclusions>                            
>                               <exclusion>
>                                       <groupId>com.other</groupId>
>                                       <artifactId>common</artifactId>
>                               </exclusion>
>                       </exclusions>
>                       <inclusions>
>                               <inclusion>
>                                       <groupId>com.other</groupId>
>                                       <artifactId>common</artifactId>
>                                       <version>2</version>
>                               </inclusion>
>                       </inclusions>
>               </dependency>
>               <dependency>
>                       <groupId>com.sample</groupId>
>                       <artifactId>bar</artifactId>
>                       <version>3</version>
>                       <!-- com.sample.foo includes version 2 of 
> com.other.common -->
>               </dependency>
>       </dependencies>
> </dependencyManagement>
>  

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

        

Reply via email to