如何在JavaMaven项目中添加exe文件作为资源?
背景:我有一个exe文件,我想从JavaMaven项目复制到用户的主目录中。在我的项目完成运行后,我将从其主目录中删除此exe文件。我需要将此exe文件用作第三方资源,以便执行我需要为此项目执行的操作 问题: 我已经在src/test/resources文件夹和src/main/resources文件夹中添加了exe文件。当我用maven构建项目并运行测试用例时,exe文件被正确复制和删除如何在JavaMaven项目中添加exe文件作为资源?,java,maven,Java,Maven,背景:我有一个exe文件,我想从JavaMaven项目复制到用户的主目录中。在我的项目完成运行后,我将从其主目录中删除此exe文件。我需要将此exe文件用作第三方资源,以便执行我需要为此项目执行的操作 问题: 我已经在src/test/resources文件夹和src/main/resources文件夹中添加了exe文件。当我用maven构建项目并运行测试用例时,exe文件被正确复制和删除 但是,当我运行Java项目时,exe文件无法运行。我收到一个错误,显示:此版本的xxx.exe与您正在运行
但是,当我运行Java项目时,exe文件无法运行。我收到一个错误,显示:此版本的xxx.exe与您正在运行的Windows版本不兼容。检查计算机的系统信息,查看是否需要x86(32位)或x64(64位)版本的程序,然后与软件发行商联系 测试文件夹和主文件夹引用不同的资源文件夹,这就是为什么测试文件夹成功而主文件夹失败的原因。 我检查了我项目的目标类。在/target/test classes文件夹中,.exe文件保持不变。它是540KB,这是正确的。在/target/classes文件夹中,.exe文件似乎已被修改。它是786KB。发生了什么,我如何配置它,以使exe文件不会像构建期间在/target/test类下那样被修改?在pom.xml中
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>3.0.1</version>
<configuration>
<nonFilteredFileExtensions>
<nonFilteredFileExtension>exe</nonFilteredFileExtension>
</nonFilteredFileExtensions>
</configuration>
</plugin>
</plugins>
</build>
org.apache.maven.plugins
imo:不是。首先,如果你想要一个Windows应用程序,Java不是你应该使用的语言。您似乎遇到的问题是操作系统的版本。如果您不明白在64位操作系统上使用32位exe(反之亦然)可能会导致麻烦,那么您不应该尝试编写任何类似的东西—可执行文件一开始是32位的。我有一个64位操作系统,没有问题。我只是想知道为什么要修改可执行文件?“此版本的xxx.exe与您正在运行的Windows版本不兼容。”->您将此翻译为:“没有问题”?ow..key.如果不修改文件,则不会出现该错误消息。如果我的机器上运行了可执行文件,那么就没有问题,当我运行测试用例时也没有问题。当我运行Java项目时,只有一个问题,因为它引用的是与测试用例不同的文件夹。我的主要问题是:为什么要修改可执行文件,我怎样才能让它不被修改?只是“运行Java项目”不会复制文件,除非您编写了实际复制它的代码。你试过调查那件事吗?