【问题标题】:Create all containing windows executable from jlink image从 jlink 映像创建所有包含 windows 可执行文件
【发布时间】:2020-01-17 02:19:44
【问题描述】:

我有一个正常工作的 jlink 图像(包括一个自定义 jre)。它工作正常。但对于我的用例,我需要将 jlink 映像的所有文件打包成一个包含所有可执行文件的单个文件 (.exe)。

我能够使用 OpenJDK 14 的 jpackage 生成一个包含所有 .msi 的安装程序,这还不错,但不是所需的解决方案。

目前有没有办法将 jlink 映像打包到 Windows 可执行文件中,这样我就可以运行它而无需其他任何东西?

【问题讨论】:

  • 如果您设法用jpackage 生成msi,当您只要求exe 而不是msi 时会发生什么?
  • 它仍然会生成一个安装程序。因为使用的命令是create-installer。
  • 我明白了。所以还没有这样的工具。
  • 我希望有某种第三方选项可以做到这一点。
  • 我想,在模块系统之前存在的第 3 方工具会更新以支持模块,如果尚未完成的话。不幸的是,我不知道有任何工具声称支持自包含运行时映像。通常,他们的日志说“JDK9+ 支持”,这意味着他们不会崩溃并且支持模块路径设置……

标签: java windows exe java-11 jlink


【解决方案1】:

您可以使用Launch4j 从您的图像创建一个 .exe 文件。生成的 .exe 文件作为包装器工作,不是一个包含所有可执行文件的文件,但您可以使用 jlink 映像加上 Inno setup 中的此 .exe 或其他类似工具来创建单个 .exe 安装程序。 请注意,Launch4j 需要一个 jar 文件来创建 .exe 文件。但是这个jar文件从来没有使用过,使用的是jlink镜像中的jar文件。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-10-22
    • 1970-01-01
    • 1970-01-01
    • 2011-04-04
    • 1970-01-01
    • 2012-10-14
    • 2018-11-13
    • 2011-02-25
    相关资源
    最近更新 更多