Uploaded image for project: 'Maven Assembly Plugin'
  1. Maven Assembly Plugin
  2. MASSEMBLY-883

Transitive dependencies with scope provided are included with jar-with-dependencies descriptor

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 3.1.0
    • 3.1.1
    • predefined descriptors
    • None

    Description

      In the following case as shown by mvn dependency:tree, with the predifined descriptor jar-with-dependencies:

       

      [INFO] +- com.jayway.jsonpath:json-path:jar:2.2.0:compile
      [INFO] | +- net.minidev:json-smart:jar:2.2.1:compile
      [INFO] | | - net.minidev:accessors-smart:jar:1.1:compile
      [INFO] | - org.slf4j:slf4j-api:jar:1.7.16:provided
       

      json-path, json-smart, accessors-smart are included, as expected. 

      But slf4j-api is also included in the resulting jar.

      Other direct dependencies with scope `provided` are correctly excluded from the final jar.

      If this is the intendented behavior, which is highly surprising, could you document it in the corresponding descriptor documentation (http://maven.apache.org/plugins/maven-assembly-plugin/descriptor-refs.html#jar-with-dependencies). Could you also explain what descriptor would allow to achieve the desired behavior (or point to a resource explaining it, I wasn't able to find one).

      Thanks.
       

      Attachments

        Activity

          People

            Unassigned Unassigned
            fanf42 Francois Armand
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: