IntelliJ IDEA 无法在所有 Java 版本中打开 SceneBuilder

IntelliJ IDEA fails to open SceneBuilder in all Java versions

每当我尝试打开我的 fxml 文件中的 SceneBuilder 选项卡时,我都会收到一条错误消息,指出无法在 Scene Builder 中打开该文件以及以下异常:

java.lang.ClassNotFoundException: javafx.scene.Node

java.lang.NoClassDefFoundError: javafx/scene/Node

问题是我可以在 Main.java 文件中执行 import javafx.scene.Node 而不会出现任何错误。

我尝试在所有可能的组合中将 Java 8、11 和 13 与两个 Scene Builder 一起用于 Java 11 和 8,但我始终遇到相同的错误。

我在 Windows 10、Azul Zulu 上使用 IntelliJ IDEA 2019.3 作为我的 JDK 和 JavaFX SDK 库。

是否有任何可用的修复程序?

你在 Linux 吗?如果是这样的话,我在使用 JDK8 时遇到了同样的问题,并通过更改终端中的 Java 版本解决了这个问题,我发现我在 IntelliJ 中使用的是 JDK8,但 java -version 的输出是 OpenJDK (不包括 FX 库)。

所以,假设你和我有同样的问题,这里是你可以解决的方法:

  1. 首先检查您的 java 版本:
   java -version
  1. 通过键入更改默认 java 版本:
    sudo update-alternatives --config java

然后选择 JDK8 或 OpenJFX(高于 11 的 JDK 将无法工作,因为他们从中删除了 FX)

  1. 重新启动您的 IDE,它应该会在编辑器中打开 SceneBuilder。