You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Dennis Homann (JIRA)" <ji...@codehaus.org> on 2009/07/08 20:05:22 UTC

[jira] Commented: (MASSEMBLY-324) DependencySet scope runtime includes jars that are scope provided

    [ http://jira.codehaus.org/browse/MASSEMBLY-324?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=182981#action_182981 ] 

Dennis Homann commented on MASSEMBLY-324:
-----------------------------------------

I have the same issue with 2.2-beta-3 and 2.2-beta-4.

In my case, I am running the assembly plug-in on project A which has a compile dependency on project B. B has a compile dependency on project C. I do not want C to show up in my assembly, so I have added dependency C with scope "provided" in A's pom. (exactly the same as described with javax.servlet:servlet-api above). The assembly descriptor looks like the one in the description of this issue.

maven-dependency-plugin 2.0 shows the C resolved to "provided" as expected (the -X debug output gives a more detailed description of what's going on, and the behavior is correct).

When I run assembly:single as part of my build, the -X debug output states correctly, that C should not be included:

{noformat}
[DEBUG] Statistics for Scope filter [null-scope=true, compile=true, runtime=true, test=false, provided=false, system=false]

[DEBUG] The following scope filters were not used:
o System
[DEBUG] The following artifacts were removed by this filter:
 ....<C is listed here>....
{noformat}

Then, further down, the output shows that C is being added to the artifact.

> DependencySet scope runtime includes jars that are scope provided
> -----------------------------------------------------------------
>
>                 Key: MASSEMBLY-324
>                 URL: http://jira.codehaus.org/browse/MASSEMBLY-324
>             Project: Maven 2.x Assembly Plugin
>          Issue Type: Bug
>    Affects Versions: 2.2-beta-2
>            Reporter: Michael Mattox
>
> I use some jars in provided scope:
> 		<dependency>
> 			<groupId>javax.servlet</groupId>
> 			<artifactId>servlet-api</artifactId>
> 			<version>2.5</version>
> 			<scope>provided</scope>
> 		</dependency>
> in my assembly, I specify scope as runtime:
> 		<dependencySet>
> 			<outputDirectory>WEB-INF/lib</outputDirectory>
> 			<unpack>false</unpack>
> 			<scope>runtime</scope>
> 		</dependencySet>
> Yet I still find the servlet-api-2.5.jar in my WAR.  SInce the servlet-api is scope provided, it should be provided by the container and not included in the WAR.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira