jar file gets corrupted while building with maven

pranay picture pranay · May 29, 2012 · Viewed 15.3k times · Source

while building a war file i am copying a set of jars from a location to a folder inside the war. While the files do get copied , however i think they get corrupted because the same class files of the jar when taken outside the war opens with a debugger while it does not open after taking from war file .

This is a part of my war pom.xml where i copy the jars

<execution> 
    <id>copy-jars</id> 
    <phase>process-resources</phase> 
    <goals> 
        <goal>copy-resources</goal> 
    </goals> 
    <configuration> 
        <outputDirectory>${basedir}/target/${project.artifactId}-${buildNumber}/somefolder</outputDirectory> 
         <resources> 
            <resource> 
                <directory>SomeSourceDirectory</directory> 
                <filtering>true</filtering> 
                <includes> 
                    <include>**/**</include> 
                </includes>
            </resource>
        </resources> 
    </configuration> 
</execution>

SomeSourceDirectory has some jars and some other files The result is: myWar/somefolder/a.jar but when i open the classes inside this jar in a debugger..i get error in WinZip that

Invalid compressed data to extract.
Severe Error:  Compressed data is invalid

However the same class file can be viewed when i view it in original folder i.e outside the war. So is there a mistake while copying the jars? Thanks.

Answer

Emmanuel Bourg picture Emmanuel Bourg · May 29, 2012

Remove <filtering>true</filtering>, it corrupts the jar files.