war manifest generation : optional=true not transitive
------------------------------------------------------

                 Key: MWAR-125
                 URL: http://jira.codehaus.org/browse/MWAR-125
             Project: Maven 2.x War Plugin
          Issue Type: Bug
            Reporter: Adrian


>From 
>http://maven.apache.org/plugins/maven-war-plugin/examples/war-manifest-guide.html,
> war  plugins distinguished the jars going to ear file and those going to 
>WEB-INF/lib.

For a jar that's deployed on the ear and not in WEB-INF/ilb, you jus have to 
put scope=compile and optional=true:
    <dependency>
      <groupId>org.foo</groupId>
      <artifactId>bar-jar1</artifactId>
      <version>${pom.version}</version>
      <optional>true</optional>
      <!-- goes in manifest classpath, but not included in WEB-INF/lib -->
    </dependency>

The problem is transitive dependencies of bar-jar1 are put in WEB-INF/lib.

For instance :
if artA declares
     <dependency>
       <artifactId>artB</artifactId>
       <optional>true</optional>
     </dependency>
and artB declares :
     <dependency>
       <artifactId>artC</artifactId>
       <optional>false</optional>
     </dependency>
then artC is transitively included in artA dependencies  but with 
optional=false. 

IMHO it should be included with optional=true since artB is optional.

I'll attach a test case ASAP.

-- 
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

        

Reply via email to