gpt4 book ai didi

java - 是否可以提取 JDK 系统模块并将其用作独立的应用程序模块/JAR 文件?

转载 作者:行者123 更新时间:2023-12-02 09:18:18 25 4
gpt4 key购买 nike

问题

我正在使用 AdoptOpenJDK 的 JRE 11* 来运行我的应用程序。该应用程序使用JavaFX,它需要名为jdk.unsupported.desktop的JDK系统模块。上述 JRE 中不存在该模块。我想知道是否可以从 SDK 中提取这个单个模块并将其包含在非模块化应用程序中

*Adopt 不仅发布 JDK,还发布 JRE

我尝试过的

我已经使用 jlink 构建了自定义 JRE,包括缺少的模块,它解决了我的问题。但是,我仍然想使用预构建的 Adopt JRE,而不是我需要自己创建的自定义 JRE。

问题

是否可以从 JDK 中“提取”一个模块并将其作为应用程序模块或常规“第 3 方”jar 在非模块化应用程序中使用?

最佳答案

我不知道有任何“官方”方法可以将平台模块转换为独立的 JAR。但我相信您可以解压缩文件 jdk-11/jmods/jdk.unsupported.desktop.jmod 并将其重新打包到 JAR 文件中。

  • jdk-11/jmods/jdk.unsupported.desktop.jmod 复制到临时文件 jdk.unsupported.desktop.zip
  • 解压缩jdk.unsupported.desktop.zip
  • 将目录 jdk.unsupported.desktop/classes 中的类压缩到 jdk.unsupported.desktop.jar

现在,如果您将 jdk.unsupported.desktop.jar 放入类路径,它应该可以与 JRE 11 一起使用。

关于java - 是否可以提取 JDK 系统模块并将其用作独立的应用程序模块/JAR 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58856616/

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