我正在按照这里的教程并使用openjdk 11.0.2
and javafx-sdk-11.0.2
。
我已经在 Eclipse 中导入了maven项目。该项目实际上可以很好地编译和打包。它还在 /target 目录中创建了 jar 文件。
问题是,我想为我的应用程序导出一个可执行文件,它本身也嵌入了必要的 JRE(因此不需要在目标机器上安装 JRE)。
这是实际项目。
如何在 Maven 中自动生成独立可执行文件?如果可能的话,我想要一个 exe。
在这里研究关于 SO 的其他 问题 ,我认为没有办法生成包含 JRE 的单个 EXE。但是,提到的工具可以生成一个可以放在“jre”目录旁边的 EXE。
使用JavaPackager Maven 插件,这实际上可以很容易地实现,只需在您的 POM 中添加以下内容:
<plugin>
<groupId>io.github.fvarrui</groupId>
<artifactId>javapackager</artifactId>
<version>1.6.2</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>package</goal>
</goals>
<configuration>
<mainClass>...</mainClass>
<bundleJre>true</bundleJre>
<platform>windows</platform>
</configuration>
</execution>
</executions>
</plugin>
运行mvn package
将在“target”内生成一个包含 EXE 的目录、一个“jre”目录和一个“libs”目录。该插件还可以生成安装程序文件。
显然,对于不同的平台,您需要调整配置,但我在 Windows 上使用 JDK 16 和 17 进行了测试,它似乎工作正常。