用Maven编译时jar文件损坏


问题内容

在构建战争文件时,我正在将一组罐子从某个位置复制到战争中的文件夹中。虽然文件确实会被复制,但是我认为它们已损坏,因为在战争之外被带出的jar的相同类文件会使用调试器打开,而从war文件中取出后不会打开。

这是我的战争pom.xml的一部分,我在其中复制了罐子

<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 有一些jar和其他文件结果是:myWar / somefolder /
a.jar,但是当我在调试器中打开此jar中的类时,.WinZip中出现错误

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

但是,当我在原始文件夹(即战争之外)中查看同一类文件时,可以查看该文件。那么复制罐子时有错误吗?谢谢。


问题答案:

删除<filtering>true</filtering>,它将破坏jar文件。