如何为Linux构建Java本机可执行文件



我正在寻找一种方法来构建我的Java或JavaFx应用程序,以便我有一个单一的可执行文件,运行时无需在运行Linux的目标系统上安装Java运行时(如Windows上的.exe)

通常,Java应用程序被打包成jar文件,可以像这样运行

java -jar <file-name>.jar

这需要我们事先安装Java JRE。

我正在寻找一个解决方案来打包我的Java应用程序,这样它就可以在不需要Java JRE的目标机器上执行。

您可以使用GraalVM将Java应用程序编译为本机平台可执行文件。

首先按照以下步骤安装GraalVM: https://www.graalvm.org/docs/getting-started/#install-graalvm

安装native-image插件:gu install native-image

使用javac正常编译Java应用程序:javac YourApp.java

编译为本机可执行文件:native-image YourApp

执行本机可执行文件:./YourApp

正如@ law在评论中提到的对于Java 14+,这是最好的解决方案

在内部使用jlink命令并支持Mac, Windows和Linux


上面提到了官方的基于java的解决方案但它的高度推荐使用GraalVM如果你想要额外的性能和更好的微服务方法

安装步骤如下@Kevin Hooke的回答


我认为' ' ' ' jlink ' ' ' ' ' '在旧的Java版本中也是可用的如果有人有使用旧版本jlink的经验,请在下面评论

相关内容

  • 没有找到相关文章

最新更新