当前位置: 首页 > 知识库问答 >
问题:

IntelliJ无法识别JavaFX 11和OpenJDK 11

岳宣
2023-03-14

我很难让IntelJ识别JavaFX包。对于一个新的JavaFX项目,使用OpenJDK11,当尝试构建项目时,IntelliJ无法识别JavaFX包。

我已经从Maven repo导入了openjfx:javafx-base-11

我看过其他问题,解决方案似乎包括检查字节码是否处于正确的级别(我的是),项目语言是否正确(我的是)。

编辑:

错误:

共有1个答案

江宏放
2023-03-14

正如注释中提到的,入门指南是从Java11和JavaFX11开始的地方。

像Java11之前那样工作的关键是要理解:

  • JavaFX 11不再是JDK的一部分
  • 您可以以不同的方式获得它,既可以作为SDK也可以作为常规依赖项(Maven/Gradle)
  • 即使项目不是模块化的,您也需要将其包含到项目的模块路径中。

JavaFX项目

如果您在IntelliJ(不使用Maven或Gradle)中创建常规JavaFX默认项目,我建议您从这里下载SDK。请注意,也有JMOD,但对于非模块化项目,SDK是首选的。

以下是运行默认项目的简单步骤:

    null

如果您使用Maven构建项目,请执行以下步骤:

>

  • 使用JavaFX原型创建Maven项目
  • 设置JDK 11(指向本地Java 11版本)
  • 添加JavaFX11依赖项。

    <dependencies>
        <dependency>
            <groupId>org.openjfx</groupId>
            <artifactId>javafx-controls</artifactId>
            <version>11</version>
        </dependency>
        <dependency>
            <groupId>org.openjfx</groupId>
            <artifactId>javafx-fxml</artifactId>
            <version>11</version>
        </dependency>
    </dependencies>
    

    这样做之后,您将注意到JavaFX类现在在编辑器中被识别。

    运行mvn compile javafx:Run,它应该可以工作。

    类似的工程也适用于Gradle项目,如这里详细解释的那样。

    编辑

  •  类似资料:
    • 我正在尝试使用TestNG来测试我的Java代码。TestNG插件安装在IntelliJ中,依赖项: 已添加到Maven中。然而,当我在类中写入“@Test”时,IntelliJ给出了错误消息:“无法解析符号'Test'。 导入组织。testng。注释。测试也无法识别。Intellij似乎忽略了Maven依赖。 以下是项目结构和错误: 我应该用TestNG做更多的事情,而不是仅仅添加Maven依赖

    • 我最近尝试导入一个现有的Gradle项目,使用启动窗口中的“Open project”选项和现有的build.Gradle文件自动设置该项目。 就在我这样做之后,IntelliJ中出现了一条错误消息,说: 看起来像这样,IntelliJ抱怨我没有将play框架添加到我的PATH变量中。尽管外壳的输出告诉了某事物。其他: 我还编写了一个简单的类来显示IntelliJ使用的PATH变量: 当我运行这个

    • null 附注:Maven-Build是成功的。因此,Maven正在识别存储库中的包。

    • 在IntelliJ Scala的调试器中,您可以打开一个窗口来评估表达式(altF8) 但是,只要表达式中有Scala符号(即'fobar),它总是失败,说:

    • Intellij Community Edition 2020.1.3无法识别StepDefinition中已经定义的步骤。我只使用cucumber-groovy、cucumber-core、cucumber-junit:all 5.1.3版本。 我在下面试过了,它不起作用。 Cucumber Groovy&Cucumber Java插件已经安装 未安装子步骤插件 我指的是GitHub上的这个项目

    • 我试图添加一个新的。js文件,但忘记添加扩展名。我删除了它,并创建了一个新的,但intelliJ不会承认它是一个JavaScript文件。 我尝试过的: 删除它并重新创建它 将其提交到 git 重新启动智能 重新启动计算机 该文件: myComponent.js