当前位置: 首页 > 面试题库 >

用Maven编译时jar文件损坏

顾永福
2023-03-14
问题内容

在构建战争文件时,我正在将一组罐子从某个位置复制到战争中的文件夹中。虽然文件确实会被复制,但是我认为它们已损坏,因为在战争之外被带出的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文件。



 类似资料:
  • 问题内容: 我使用Eclipse在Windows 7中创建了一个jar文件。当我尝试打开jar文件时,它说jar文件无效或损坏。谁能建议我为什么jar文件无效? 问题答案: 当您在Windows资源管理器中双击一个JAR文件时,会发生这种情况,但是JAR本身实际上不是 可执行的 JAR。真正的可执行JAR至少应具有带有方法的类,并在中引用它。 在Eclispe中,您需要将项目导出为 Runnabl

  • 我尝试使用以下命令编译2个jar文件和4个java源文件: javac-classpath junit-4.12.jar jar2.jar 1.java 2.java 3.java 4.java 但是,我得到以下错误:

  • 问题内容: 我在Java文件(MyRtmpClient.java)中具有以下内容: 并且位于一个JAR文件中(当然具有正确的目录结构)。该jar文件和我需要的其他文件与.java文件位于同一目录中。 然后我用下面的代码编译: 但是我得到了错误: 如何在我的项目中包含jar文件? 问题答案: 您的命令行是正确的,但是有一些注意事项: 您必须具有javac> = 1.6,因为只有在该版本中,编译器才会

  • 我试图用Maven汇编插件生成一个jar文件。除了我的log4j.properties文件之外,其他都是正确的;当我运行jar文件时,控制台输出: log4j:警告找不到记录器(com.xxxxxxxxx.web.processEngine.main)的追加器。log4j:警告请正确初始化log4j系统。log4j:警告有关详细信息,请参阅http://logging.apache.org/log

  • 我在一个maven项目中遇到了一个问题,在这个项目中,我从src/main/Resources/lib文件夹分发dlls。 该项目使用maven assembly插件构建为一个具有依赖项的jar。 不幸的是,maven进程正在复制过程中损坏我的dll库,因此它们对应用程序不再有用。 我已经了解了资源过滤等概念。 这是我的相关pom。xml 有人有什么想法吗? 我想我需要做一些像这样的事情,但到目前

  • 我在我的JRXML中使用我的应用程序A的一些对象,如下所示: 使用iReport,我已经将我的目标/类目录添加到类路径,每个想法都可以。 现在,当我尝试用maven(mvn clean install)编译JRXML时,我遇到了一个错误: 当我的构建失败时,maven已经编译了目标/类中的所有类。我不明白为什么maven找不到EnumOne、EnumTwo和Test2DTO,而它却能找到另一个。