Details
-
Type:
Bug
-
Status:
Open
-
Priority:
Major
-
Resolution: Unresolved
-
Affects Version/s: 3.0.4
-
Fix Version/s: None
-
Component/s: Dependencies
-
Labels:None
-
Environment:HideApache Maven 3.0.4 (r1232337; 2012-01-17 00:44:56-0800)
Maven home: D:\bin\apache-maven-3.0.4
Java version: 1.6.0_27, vendor: Sun Microsystems Inc.
Java home: D:\bin\java\jdk1.6.0_27\jre
Default locale: en_US, platform encoding: Cp1252
OS name: "windows 7", version: "6.1", arch: "amd64", family: "windows"ShowApache Maven 3.0.4 (r1232337; 2012-01-17 00:44:56-0800) Maven home: D:\bin\apache-maven-3.0.4 Java version: 1.6.0_27, vendor: Sun Microsystems Inc. Java home: D:\bin\java\jdk1.6.0_27\jre Default locale: en_US, platform encoding: Cp1252 OS name: "windows 7", version: "6.1", arch: "amd64", family: "windows"
-
Complexity:Intermediate
-
Number of attachments :
Description
Expected: A dependency declared with a scope of 'provided', along with any transitive dependencies, should not be included in the final artifact.
Actual: I have a dependency, jsp-api, declared with 'provided' scope. This dependency has a dependency of its own, servlet-api. The servlet-api.jar is being included in the web-inf/lib folder of the resultant war file.
Background: We recently upgraded from Maven 2.2.1 to Maven 3.0.4. The problem was not witnessed until after the upgrade.
Steps to Reproduce: Run mvn install, then have a look at the web-inf/lib folder. Notice that the servlet-api.jar has been included.
Additional Info: It seems that I can only reproduce this behavior when declaring a specific dependency in my pom, spring-ldap. Here is the dependency tree for the given pared-down project (attached):
— maven-dependency-plugin:2.1:tree (default-cli) @ provided-scope-not-working —
com.bug.example:provided-scope-not-working:war:0.0.1-SNAPSHOT
+- javax.servlet:jsp-api:jar:2.0:provided
| - javax.servlet:servlet-api:jar:2.4:provided - org.springframework.ldap:spring-ldap:jar:1.2.1:compile +- commons-logging:commons-logging:jar:1.0.4:compile +- commons-lang:commons-lang:jar:2.1:compile +- org.springframework:spring-beans:jar:2.0.6:compile |
| +- (commons-logging:commons-logging:jar:1.1:compile - omitted for conflict with 1.0.4) |
| - (org.springframework:spring-core:jar:2.0.6:compile - omitted for duplicate) - org.springframework:spring-core:jar:2.0.6:compile - (commons-logging:commons-logging:jar:1.1:compile - omitted for conflict with 1.0.4) |
Issue Links
- is duplicated by
-
MNG-5273
Transitive dependencies with scope provided ending up in the final artifact
-