[ 
http://jira.codehaus.org/browse/MASSEMBLY-504?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=236082#action_236082
 ] 

John Casey commented on MASSEMBLY-504:
--------------------------------------

The problem is that the excluded dependency - example:b - is included in the 
dependency trail of example:c, NOT example:a. This means that when you exclude 
example:b and useTransitiveFiltering, example:c is excluded.

It's a weakness of Maven's artifact-resolution design that the dependency trail 
is only a List, not a graph. If it were a graph, it might be possible to see 
that BOTH example:a and example:b are in the "dependency trail" for example:c.

Until this is fixed, it would mean reinventing artifact resolution solely for 
the assembly plugin to fix this issue.

> Transitive dependencies of a dependency added by a profile aren't taken into 
> account
> ------------------------------------------------------------------------------------
>
>                 Key: MASSEMBLY-504
>                 URL: http://jira.codehaus.org/browse/MASSEMBLY-504
>             Project: Maven 2.x Assembly Plugin
>          Issue Type: Bug
>    Affects Versions: 2.2-beta-5
>            Reporter: Guillaume Eyroulet
>         Attachments: maven-assembly-example.zip
>
>
> In a reactor, there are 4 modules A, B, C and D.
>  * A and B depends on C
>  * D depends 
>  ** on B
>  ** on A due to a profile.
> When making an assembly from D
>  * including A 
>  * excluding B
>  * using transitive dependencies
> {noformat}
>   <formats>
>     <format>dir</format>
>   </formats>
>   <includeBaseDirectory>false</includeBaseDirectory>  
>   <dependencySets>
>     <dependencySet>
>       <useTransitiveDependencies>true</useTransitiveDependencies>
>       <useTransitiveFiltering>true</useTransitiveFiltering>
>       <includes>
>         <include>example:a</include>
>       </includes>
>       <excludes>
>               <exclude>example:b</exclude>
>       </excludes>
>     </dependencySet>
>   </dependencySets>
> </assembly>
> {noformat}
> C isn't in the result directory.
> Remark: C is in the result directory if D depends on A normally.

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