[ 
http://jira.codehaus.org/browse/MJAR-106?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=139808#action_139808
 ] 

Vincent Ricard commented on MJAR-106:
-------------------------------------

Hi Michael Mattox,

I had the same problem, i used 2.1, since the 2.2 version all is fine for me. 
Check your version with mvn help:effective-pom (look at the pluginManagement 
section).

Hope this help.

> Excludes do not work as described on the Usage page
> ---------------------------------------------------
>
>                 Key: MJAR-106
>                 URL: http://jira.codehaus.org/browse/MJAR-106
>             Project: Maven 2.x Jar Plugin
>          Issue Type: Bug
>    Affects Versions: 2.2
>            Reporter: Michael Mattox
>
> The jar plugin usage page gives an example:
> {code:xml}
>       <plugin>
>         <groupId>org.apache.maven.plugins</groupId>
>         <artifactId>maven-jar-plugin</artifactId>
>         <configuration>
>           <includes>
>             <include>**/service/*</include>
>           </includes>
>         </configuration>
>       </plugin>
> {code}
> If I use excludes, such as this:
> {code:xml}
>                                               <configuration>
>                                                       <excludes>
>                                                               
> <exclude>**/*.properties</exclude>
>                                                       </excludes>
>                                               </configuration>
> {code}
> It doesn't work.  I get the properties in both my jar and my -tests.jar.  
> However, if I add executions to the plugin configuration, like this:
> {code:xml}
>                       <plugin>
>                               <groupId>org.apache.maven.plugins</groupId>
>                               <artifactId>maven-jar-plugin</artifactId>
>                               <executions>
>                                       <execution>
>                                               <goals>
>                                                       <goal>jar</goal>
>                                               </goals>
>                                               <configuration>
>                                                       <excludes>
>                                                               
> <exclude>**/*.properties</exclude>
>                                                       </excludes>
>                                               </configuration>
>                                       </execution>
>                               </executions>
>                       </plugin>
> {code}
> Then the properties are excluded form my test jar but NOT from my regular 
> jar.  Here is some debug output:
> {noformat}
> [DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-jar-plugin:2.2:jar' 
> -->
> [DEBUG]   (f) classesDirectory = 
> C:\projects\company\projects\pam\workspace\mm-config\target\classes
> [DEBUG]   (f) defaultManifestFile = 
> C:\projects\company\projects\pam\workspace\mm-config\target\classes\META-INF\MANIFEST.MF
> [DEBUG]   (f) finalName = mm-config-1.0-SNAPSHOT
> [DEBUG]   (f) forceCreation = false
> [DEBUG]   (f) outputDirectory = 
> C:\projects\company\projects\pam\workspace\mm-config\target
> [DEBUG]   (f) project = MavenProject: company:mm-config:1.0-SNAPSHOT @ 
> C:\projects\company\projects\pam\workspace\mm-config\pom.xml
> [DEBUG]   (f) useDefaultManifestFile = false
> [DEBUG] -- end configuration --
> [INFO] [jar:jar]
> [DEBUG] isUp2date: false (Destination 
> C:\projects\company\projects\pam\workspace\mm-config\target\mm-config-1.0-SNAPSHOT.jar
>  not found.)
> [INFO] Building jar: 
> C:\projects\company\projects\pam\workspace\mm-config\target\mm-config-1.0-SNAPSHOT.jar
> [DEBUG] adding directory META-INF/
> [DEBUG] adding entry META-INF/MANIFEST.MF
> [DEBUG] adding directory commons/
> [DEBUG] adding entry commons/applicationContext.xml
> [DEBUG] adding entry database.properties
> [DEBUG] adding entry log4j.xml
> [DEBUG] adding entry messages-exceptions-commons.properties
> [DEBUG] adding entry messages-warnings-commons.properties
> [DEBUG] adding entry mm2-rmi.properties
> [DEBUG] adding directory META-INF/maven/
> [DEBUG] adding directory META-INF/maven/company/
> [DEBUG] adding directory META-INF/maven/company/mm-config/
> [DEBUG] adding entry META-INF/maven/company/mm-config/pom.xml
> [DEBUG] adding entry META-INF/maven/company/mm-config/pom.properties
> [DEBUG] company:mm-config:jar:1.0-SNAPSHOT (selected for null)
> [DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-jar-plugin:2.2:jar' 
> -->
> [DEBUG]   (f) classesDirectory = 
> C:\projects\company\projects\pam\workspace\mm-config\target\classes
> [DEBUG]   (f) defaultManifestFile = 
> C:\projects\company\projects\pam\workspace\mm-config\target\classes\META-INF\MANIFEST.MF
> [DEBUG]   (f) excludes = [Ljava.lang.String;@24dd07a
> [DEBUG]   (f) finalName = mm-config-1.0-SNAPSHOT
> [DEBUG]   (f) forceCreation = false
> [DEBUG]   (f) outputDirectory = 
> C:\projects\company\projects\pam\workspace\mm-config\target
> [DEBUG]   (f) project = MavenProject: company:mm-config:1.0-SNAPSHOT @ 
> C:\projects\company\projects\pam\workspace\mm-config\pom.xml
> [DEBUG]   (f) useDefaultManifestFile = false
> [DEBUG] -- end configuration --
> [INFO] [jar:jar {execution: default}]
> [DEBUG] isUp2date: true
> [DEBUG] Archive 
> C:\projects\company\projects\pam\workspace\mm-config\target\mm-config-1.0-SNAPSHOT.jar
>  is uptodate.
> [DEBUG] company:mm-config:jar:1.0-SNAPSHOT (selected for null)
> [DEBUG] Configuring mojo 
> 'org.apache.maven.plugins:maven-jar-plugin:2.2:test-jar' -->
> [DEBUG]   (f) defaultManifestFile = 
> C:\projects\company\projects\pam\workspace\mm-config\target\classes\META-INF\MANIFEST.MF
> [DEBUG]   (f) excludes = [Ljava.lang.String;@24e7541
> [DEBUG]   (f) finalName = mm-config-1.0-SNAPSHOT
> [DEBUG]   (f) forceCreation = false
> [DEBUG]   (f) outputDirectory = 
> C:\projects\company\projects\pam\workspace\mm-config\target
> [DEBUG]   (f) project = MavenProject: company:mm-config:1.0-SNAPSHOT @ 
> C:\projects\company\projects\pam\workspace\mm-config\pom.xml
> [DEBUG]   (f) testClassesDirectory = 
> C:\projects\company\projects\pam\workspace\mm-config\target\test-classes
> [DEBUG]   (f) useDefaultManifestFile = false
> [DEBUG] -- end configuration --
> [INFO] [jar:test-jar {execution: default}]
> [DEBUG] isUp2date: false (Destination 
> C:\projects\company\projects\pam\workspace\mm-config\target\mm-config-1.0-SNAPSHOT-tests.jar
>  not found.)
> [INFO] Building jar: 
> C:\projects\company\projects\pam\workspace\mm-config\target\mm-config-1.0-SNAPSHOT-tests.jar
> [DEBUG] adding directory META-INF/
> [DEBUG] adding entry META-INF/MANIFEST.MF
> [DEBUG] adding directory commons/
> [DEBUG] adding entry commons/applicationContext.xml
> [DEBUG] adding entry log4j.xml
> [DEBUG] adding directory META-INF/maven/
> [DEBUG] adding directory META-INF/maven/company/
> [DEBUG] adding directory META-INF/maven/company/mm-config/
> [DEBUG] adding entry META-INF/maven/company/mm-config/pom.xml
> [DEBUG] adding entry META-INF/maven/company/mm-config/pom.properties
> {noformat}
> The other thing I don't understand with this approach is that the jar plugin 
> is configured twice.  First without excludes and the second time with 
> excludes.  The second time the plugin says the jar is up to date.  Why is 
> jar:jar being invoked twice?  I assume it's because I defined the execution 
> goal jar.  
> And why aren't the excludes used for the first jar:jar call??

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