IntelliJ IDEA 2018.2,openjdk 11和openjfx 11(没有maven,不是模块化项目):找不到模块javafx.controls

时间:2018-10-19 09:26:25

标签: java intellij-idea javafx openjfx javafx-11

我刚刚在intelliJ中使用openjdk 11创建了一个新的JavaFX项目,并且已经在其网站上下载了最后一个openjfx库。

这就是我所做的:

我已添加到“运行/调试VM”选项:--module-path %PATH_TO_FX% --add-modules=javafx.controls,javafx.fxml VM Options

我添加了一个新变量env PATH_TO_FX:PATH_TO_FX=%programfiles%\Java\javafx-sdk-11\lib

因此它编译良好,但在运行时失败:

Error occurred during initialization of boot layer
java.lang.module.FindException: Module javafx.controls not found

有人知道我在这里想念什么吗?

PS:我已经点击了此链接https://openjfx.io/openjfx-docs/#install-javafx

编辑:

我应该在这里有onpenjfx库吗? classpath

2 个答案:

答案 0 :(得分:1)

由于Java 11启动器检查主类是否扩展javafx.application.Application,因此显示此错误。如果是这种情况,则需要在模块路径上具有javafx.graphics模块。

  1. 添加VM选项

要解决此问题,请单击运行->编辑配置...,然后添加以下VM选项:

  

-module-path%PATH_TO_FX%--add-modules = javafx.controls,javafx.fxml

请注意,IntelliJ创建的默认项目使用FXML,因此javafx.fxml与javafx.controls一起是必需的。如果您的项目使用其他模块,则还需要添加它们。 enter image description here

单击“应用”,然后关闭对话框。

  1. 运行项目

单击运行->运行...以运行该项目,现在它应该可以正常运行。

答案 1 :(得分:0)

要解决此问题,请单击运行->编辑配置...,然后添加修改路径变量,如下所示:

--module-path ${PATH_TO_FX} --add-modules=javafx.controls,javafx.fxml