【问题标题】:JavaFX 11.0.2 not working on Intellij (java 11)JavaFX 11.0.2 不适用于 Intellij (java 11)
【发布时间】:2019-08-07 17:08:39
【问题描述】:

在过去的 3 个小时里,我一直在浏览 Stack Overflow 和谷歌搜索,但似乎没有任何帮助。

我的项目结构设置如下:

Project SDK: "11 (java version "11.0.2")

Project language level: "11 - Local variable syntax for lambda parameters" - 我也试过SDK默认

在模块下我已经导入了所有 javafx-sdk-11.0.2 jar 文件

还有我的虚拟机选项:

--module-path C:\Program Files\Java\OpenJDK\javafx-sdk-11.0.2\lib --add-modules=javafx.controls,javafx.fxml

现在,每当我尝试运行应用程序时,都会收到以下错误:

Error: Could not find or load main class Files\Java\OpenJDK\javafx-sdk-11.0.2\lib
Caused by: java.lang.ClassNotFoundException: Files\Java\OpenJDK\javafx-sdk-11.0.2\lib

编辑:

我将路径添加到引号中,然后转到下一个错误: “启动层初始化期间发生错误 java.lang.module.FindException: 找不到模块 javafx.base"

【问题讨论】:

  • 引用你的模块路径 - --module-path "C:\Program Files\Java\OpenJDK\javafx-sdk-11.0.2\lib"
  • 现在我得到“java.lang.module.FindException: Module javafx.base not found”
  • 可能应该尝试将其添加到您的--add-modules 列表中。第一个错误是由模块路径中的空间引起的。
  • 它保持不变,一旦添加到 --add-modules。我也可以在我的 javafx sdk 文件夹中看到该文件。

标签: java intellij-idea javafx


【解决方案1】:

我似乎通过使用以下 VM 选项修复了它: --module-path ${PATH_TO_FX} --add-modules=javafx.controls,javafx.fxml,javafx.base

我还尝试将单个 jar 文件添加到我的模块中,这似乎奏效了。

【讨论】:

    【解决方案2】:

    与 IJ, 单击运行 选择编辑配置 在虚拟机选项中输入 --module-path "C:\Program Files\Java\OpenJDK\javafx-sdk-11.0.2\lib" --add-modules=javafx.controls,javafx.fxml

    或者 --module-path "这里插入你的路径" --add-modules=javafx.controls,javafx.fxml

    【讨论】:

      【解决方案3】:

      我遇到了同样的问题。

      显然,我使用 JavaFX 11.0.2 和 /Applications/IntelliJ IDEA.app/Contents/jbr/Contents/Home 中的 JDK,该 JDK 在项目设置中显示为 11.0.6。我切换到 Adopt OpenJDK 11 并解决了问题。

      【讨论】:

        猜你喜欢
        • 2019-04-26
        • 2021-04-30
        • 1970-01-01
        • 1970-01-01
        • 2019-07-24
        • 2019-06-28
        • 2019-02-27
        相关资源
        最近更新 更多