错误:缺少JavaFX运行时组件,并且需要使用JDK 11运行此应用程序

Max*_*ela 33 java javafx intellij-idea openjfx

我正在尝试使用IntelliJ运行示例JavaFX项目,但它失败并出现异常:

Error: JavaFX runtime components are missing, and are required to run this application
Run Code Online (Sandbox Code Playgroud)

我在这里下载了JDK 11:http ://jdk.java.net/11/我在 这里下载了OpenJFX:http://jdk.java.net/openjfx/我正在使用:IntelliJ IDEA 2018.2(社区版)构建#IC-182.3684.40,建于2018年7月17日JRE:1.8.0_152-release-1248-b8 amd64 JVM:JetBrains的OpenJDK 64位服务器虚拟机sro Windows 10 10.0

我使用JDK 11在IntelliJ中创建了一个新的JavaFX项目.我的JavaFX类未知,所以我通过执行以下操作添加了OpenJFX库:

  • 文件 - >项目结构 - >模块 - > + - >库 - > Java

我将OpenJFX添加到"类"下面的8个jar,以及"Sources"下面的文件夹和"Native Library Locations"下bin文件夹的路径.

当我正在构建项目时,这很好,但不可能运行它.

我究竟做错了什么?

小智 22

这对我有用:

文件>>项目结构>>模块>>依赖>> +(窗口左侧)

单击"+"符号将允许您指定解压缩JavaFX的"lib"文件夹的目录.

范围是编译(这是默认设置.)然后,您可以通过双击该行来编辑它以将其命名为JavaFX.

然后在:

运行>>编辑配置

将此行添加到VM选项:

--module-path /path/to/JavaFX/lib --add-modules=javafx.controls
Run Code Online (Sandbox Code Playgroud)

(哦,别忘了设置SDK)

  • `--add-modules=javafx.controls` 给了我 **java.lang.module.FindException: 找不到模块 javafx.controls** (8认同)
  • `--module-path /path/to/JavaFX/lib --add-modules=javafx.controls,javafx.fxml` ..... 如果您使用 fxml,只需添加 `javafx.fxml` 即可。 (4认同)
  • JavaFX 11不再与JDK捆绑在一起,它建立在JDK 11之上,并且是一个独立的组件。只需观看有关如何集成它们的视频即可https://www.youtube.com/watch?v=qn2tbftFjno您需要在此处下载独立的JavaFx >>>> https://gluonhq.com/products/javafx/干杯 (2认同)