[ 
https://issues.apache.org/jira/browse/MASSEMBLY-894?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jeff Evans updated MASSEMBLY-894:
---------------------------------
    Attachment:     (was: maven-assembly-plugin-issue.zip)

> Test scope dependency causes compile time dependency to be excluded
> -------------------------------------------------------------------
>
>                 Key: MASSEMBLY-894
>                 URL: https://issues.apache.org/jira/browse/MASSEMBLY-894
>             Project: Maven Assembly Plugin
>          Issue Type: Bug
>          Components: dependencySet, filtering
>    Affects Versions: 3.1.0
>            Reporter: Jeff Evans
>            Priority: Minor
>
> Consider the following dependencies
>  * {{moduleA}} depends on moduleB, at {{compile}} scope, which in turn 
> depends on {{libraryX}}, also at {{compile}} scope
>  * {{moduleA}} also depends on {{libraryX directly}}, but at a {{test}} scope
> In this scenario, when defining a {{dependencySet}} to capture the 
> {{runtime}} dependencies of moduleA, I would expect libraryX to be included, 
> but it seems it's not.  That's because the {{test}} scope we use directly in 
> {{moduleA}} is overriding the {{compile}} scope from {{moduleB}}.  I would 
> think that the dependency should be included, as its a compile (and thus 
> runtime) dependency of moduleB, and therefore of moduleA itself, even though 
> it's not a compile time dependency of moduleA directly.  Moreover, since the 
> direct dependency from moduleA is at a test scope, it should be completely 
> ignored by the plugin, which should be only looking at {{runtime}} scope.
> I have created a sample project to illustrate this behavior 
> [here|https://github.com/jeff303/maven-assembly-plugin-issues].  If you run 
> {{mvn clean package}}, the {{jackson-core}} jars (and others) do not end up 
> in the final distribution.  I observed this behavior in version 2.6 of the 
> plugin, but also tried with 3.1.0 and saw the same (although the debug output 
> differed somewhat).  If you change the scope on line 76 of the root 
> {{pom.xml}} file to {{compile}} instead, then it works as expected.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to