[ http://jira.codehaus.org/browse/MNG-1577?page=comments#action_79208 ] 
            
Mike Perham commented on MNG-1577:
----------------------------------

Uh oh, the depMgmt scope in the parent POM is still overriding the scope given 
in the leaf POM.  This is bad - the leaf should always be able to override its 
parents settings.  The depMgmt settings should only override transitive deps or 
provide info that is not given in the leaf (like if the scope is not given in 
the leaf, it should default to the scope in the parent's depMgmt).

And I'm testing against the 2.0.x branch so please target that code first if 
you are going to get me an updated patch.

> dependencyManagement does not work for transitive dependencies
> --------------------------------------------------------------
>
>                 Key: MNG-1577
>                 URL: http://jira.codehaus.org/browse/MNG-1577
>             Project: Maven 2
>          Issue Type: Bug
>          Components: Artifacts and Repositories
>    Affects Versions: 2.0
>            Reporter: Joerg Schaible
>             Fix For: 2.1
>
>         Attachments: mng1577.patch, mng1577a.patch, mng1577b.patch, 
> mng1577c.patch, mng1577d.patch, mng1577trunk.patch
>
>
> The dependencyManagement does not work for transient dependencies. The 
> specified version is ignored.
> Use case:
> Main POM defines commons-digester-1.6 and commons-beanutils-1.7.0, A-SNAPSHOT 
> and B-SNAPSHOT
> Project A is child of Main and depends directly on commons-beanutils (version 
> inherited from Main)
> Project B is child of Main and depends directly on commons-digester (version 
> inherited from Main)
> Project C is child of Main and depends directly on A & B (versions inherited 
> from Main)
> A is compiled and tests are run using commons-beanutils-1.7.0
> B is compiled and tests are run using commons-digester-1.6 and 
> commons-beanutils-1.6, since digester is dependend on this
> C is compiled and tests are run using commons-beanutils-1.7.0
> Integration tests of B did not verify, that B is behaving as expected in this 
> scenario. B might fail with 1.7.0 and it is not even recognized.
> If I add beanutils also as direct dependency to B, it works fine, but then 
> are transitive dependency useless. It should be possible to define at least 
> in the dependencyManagement, that the versions of transient dependencies also 
> defined in the dependencyManagement have priority.
> - Jörg

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