gpt4 book ai didi

java - 尝试解析 OpenJFX jmods 时 jdeps 命令失败

转载 作者:行者123 更新时间:2023-11-30 05:46:20 24 4
gpt4 key购买 nike

我尝试在使用 OpenJFX 的项目上运行 jdeps 命令,但始终失败。

我正在使用的命令,已尽可能简化:

jdeps --module-path Y:\javafx-jmods-11.0.2 --add-modules javafx.base Test.jar

javafx-jmods-11.0.2 是包含 OpenJFX jmod 文件的目录。

当我运行此命令时,出现错误:

Exception in thread "main" java.lang.module.FindException: Module javafx.base not found
at java.base/java.lang.module.Resolver.findFail(Resolver.java:877)
at java.base/java.lang.module.Resolver.resolve(Resolver.java:128)
at java.base/java.lang.module.Configuration.resolve(Configuration.java:411)
at java.base/java.lang.module.Configuration.resolve(Configuration.java:245)
at jdk.jdeps/com.sun.tools.jdeps.JdepsConfiguration.<init>(JdepsConfiguration.java:117)
at jdk.jdeps/com.sun.tools.jdeps.JdepsConfiguration$Builder.build(JdepsConfiguration.java:563)
at jdk.jdeps/com.sun.tools.jdeps.JdepsTask.buildConfig(JdepsTask.java:589)
at jdk.jdeps/com.sun.tools.jdeps.JdepsTask.run(JdepsTask.java:543)
at jdk.jdeps/com.sun.tools.jdeps.JdepsTask.run(JdepsTask.java:519)
at jdk.jdeps/com.sun.tools.jdeps.Main.main(Main.java:49)

有人对为什么找不到位于 Y:\javafx-jmods-11.0.2 的 javafx.base 模块有任何想法或建议吗?

最佳答案

通常,当您收到错误时:

java.lang.module.FindException: Module ... not found

这意味着模块路径错误(没有有效路径)或者您提供的路径不包含所需的模块。

正如您在Running javafx sample on JDK 11 with OpenJFX 11 JMODS on Module Path的答案中看到的那样:

As explained here: http://openjdk.java.net/jeps/261#Packaging:-JMOD-files:

JMOD files can be used at compile time and link time, but not at run time. To support them at run time would require, in general, that we be prepared to extract and link native-code libraries on-the-fly.

这意味着您不能将 jmods 与 jdeps 结合使用。

解决方案

在这种情况下,解决方案很简单:使用 JavaFX SDK 中的 jars而不是 jmod:

jdeps --module-path Y:\javafx-sdk-11.0.2\lib --add-modules javafx.base Test.jar

关于java - 尝试解析 OpenJFX jmods 时 jdeps 命令失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54774072/

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