我刚刚在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
答案 0 :(得分:1)
由于Java 11启动器检查主类是否扩展javafx.application.Application,因此显示此错误。如果是这种情况,则需要在模块路径上具有javafx.graphics模块。
要解决此问题,请单击运行->编辑配置...,然后添加以下VM选项:
-module-path%PATH_TO_FX%--add-modules = javafx.controls,javafx.fxml
请注意,IntelliJ创建的默认项目使用FXML,因此javafx.fxml与javafx.controls一起是必需的。如果您的项目使用其他模块,则还需要添加它们。
单击“应用”,然后关闭对话框。
单击运行->运行...以运行该项目,现在它应该可以正常运行。
答案 1 :(得分:0)
要解决此问题,请单击运行->编辑配置...,然后添加修改路径变量,如下所示:
--module-path ${PATH_TO_FX} --add-modules=javafx.controls,javafx.fxml