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

Jeff Evans updated MASSEMBLY-894:
---------------------------------
    Summary: Test scope dependency causes compile time dependency to be 
excluded  (was: Local artifactScope overriding results in compile transitive 
dependencies being omitted)

> 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
>         Attachments: maven-assembly-plugin-issue.zip
>
>
> Consider the following dependencies
>  * moduleA (compile) depends on moduleB (compile) which depends on libraryX 
> (compile)
>  * 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.
> I have attached a sample project to illustrate this behavior.  If you run 
> {{mvn 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).



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

Reply via email to