[ https://issues.apache.org/jira/browse/MASSEMBLY-675?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16712145#comment-16712145 ]
Falko Modler commented on MASSEMBLY-675: ---------------------------------------- This fix also improves runtime dramatically when you have many dependencies and {{<useTransitiveDependencies>true</useTransitiveDependencies>}}! Can you please release 3.1.1, [~olamy] / [~hboutemy] / [~rfscholte] / [~khmarbaise]? Thanks! > Maven Assembly packaging wildcard-excluded dependencies > ------------------------------------------------------- > > Key: MASSEMBLY-675 > URL: https://issues.apache.org/jira/browse/MASSEMBLY-675 > Project: Maven Assembly Plugin > Issue Type: Bug > Affects Versions: 2.4 > Environment: Apache Maven 3.1.1 > Java version: 1.7.0_45, vendor: Oracle Corporation > OS name: "mac os x", version: "10.8.4", arch: "x86_64", family: "mac" > Reporter: Frank Wilson > Assignee: Guillaume Boué > Priority: Major > Fix For: 3.1.1 > > Attachments: massembly-675.zip > > > Version 2.4 ignores wildcard exclusions in POM dependencies > Example (perhaps contrived - but easy to setup): > When a pom declares a dependency such as closure-compiler and for some reason > we do not want to pull its dependencies in we could declare this in our POM, > without having to know what those dependencies are: > <dependencies> > <dependency> > <groupId>com.google.javascript</groupId> > <artifactId>closure-compiler</artifactId> > <version>v20131014</version> > <exclusions> > <exclusion> > <artifactId>*</artifactId> > <groupId>*</groupId> > </exclusion> > </exclusions> > </dependency> > </dependencies> > This is a valid use of the exclusion feature as per [Maven > Confluence|http://docs.codehaus.org/display/MAVENUSER/wildcard+exclusion+for+artifact+dependencies], > [MNG-3832|https://jira.codehaus.org/browse/MNG-3832]. False warning about > wildcards were > [fixed|https://git-wip-us.apache.org/repos/asf?p=maven.git;a=commitdiff;h=65c135d5] > in Git about 10 days ago > Here is the assembly descriptor: > <assembly> > <id>bin</id> > <formats> > <format>dir</format> > </formats> > <includeBaseDirectory>false</includeBaseDirectory> > <dependencySets> > <dependencySet/> > </dependencySets> > </assembly> > We expect to only find the current project artifact and the closure-compiler > JAR in our directory assembly. However the assembly plugin ignores our POM > directive and includes the closure-compilers dependencies anyway! > Steps to reproduce are: > $ unzip massembly-675.zip > $ cd massembly-675 > $ mvn clean install > $ ls target/massembly-675-1-bin > args4j-2.0.16.jar json-20090211.jar > protobuf-java-2.4.1.jar > closure-compiler-v20131014.jar jsr305-1.3.9.jar > guava-15.0.jar massembly-675-1.jar > *Notice that the excluded jars are included in the assembly* > I would expect to only see the following JARs. > * closure-compiler-v20131014.jar > * massembly-675-1.jar -- This message was sent by Atlassian JIRA (v7.6.3#76005)