gpt4 book ai didi

java - 独立的应用程序,用 Java 构建

转载 作者:搜寻专家 更新时间:2023-10-30 21:22:41 24 4
gpt4 key购买 nike

我看过一些简要提到 Java 9 中自包含应用程序的在线演示,但我有一个问题想弄清楚。

有了新的模块系统,您现在可以只包含运行应用程序所需的最少代码量。但是,希望运行该应用程序的系统是否仍然需要 JRE,或者是否可以将其包含在程序的基本模块中?

我怀疑是后者,因为下载最新版本 Java 的页面 ( here ) 仍然显示版本 8_151。

TL;DR - 使用 Java 9,是否可以创建一个独立的可执行文件,可以在没有安装 JRE/Java 的系统上执行?

最佳答案

j链接

是的,这是可能的with jlink ( JEP 282 ),但是您的所有代码您的依赖项都需要是模块化 JAR(即具有 module-info.class 的)。它是这样工作的:

jlink
--module-path $JAVA_HOME/jmods:mods
--add-modules your.app
--launcher launch-app=your.app
--output your-app-image

详细说明:

  • --module-path 列出包含模块的文件夹 - 这需要包括您要使用的 JDK 附带的平台模块(在 $JAVA_HOME/jmods ) 和您的应用程序模块 (mods)
  • --add-modules 命名您希望运行时镜像包含的模块 - 它的所有(它们的)传递依赖项都包含在内
  • --launcher 是可选的,但非常方便;它使用给定的名称 (launch-app) 创建一个操作系统特定的启动器(例如 Windows 上的 .bat),启动指定的模块(your.app ;在这种情况下,假设主类是为它定义的)
  • --output 指定创建运行时镜像的位置

关于java - 独立的应用程序,用 Java 构建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46860679/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com