我正在尝试更新我的 JavaFX 项目以与 JRE 13 兼容(直到现在它被设置为使用 JRE 1.8)。我正在使用 Mac 使用 Eclipse 2020-03 进行开发。
我必须处理的第一个大问题是从 JDK 1.8 中包含的 JavaFX 库迁移到必须将 JavaFX (14) 作为 JDK 13 的外部包导入。
第二个问题是从使用类路径迁移到使用模块路径。我是模块路径的新手,所以我所说的可能没有意义,但我现在的设置是这样的:
modulepath:
<list of other .jar files>
JRE System Library [Java SE 13 [13.0.2]]
JavaFX 14
<list of .jar files I downloaded, including javafx-swt, javafx.base, javafx.controls, javafx.fxml, javafx.graphics, javafx.media, javafx.swing, javafx.web>
<I created a User Library from the above listed .jar’s>
最后,现在所有的编译器错误都消失了(我不得不重新编译我下载的一些外部 .jar 文件,因此没有任何拆分包),但是当我构建和运行应用程序类时,什么也没有发生。
检查 Mac 系统控制台,以下输出似乎引用了应用程序未启动的原因,但我检查了他的 JDK 路径并且引用的java
可执行文件确实存在。
com.apple.xpc.launchd[1] (com.apple.xpc.launchd.domain.pid.java.40558): Failed to bootstrap path: path = /Library/Java/JavaVirtualMachines/jdk-13.0.2.jdk/Contents/Home/bin/java, error = 2: No such file or directory
这里发生了什么?如果您需要有关我的项目配置的更多信息,请发表评论,我可以添加详细信息。