Error: JavaFX runtime components are missing, and are required to run this application
--module-path="C:\Program Files\Java\javafx-sdk-11\lib" --add-modules=javafx.controls
我得到以下错误:
Exception in Application start method
java.lang.reflect.InvocationTargetException
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(LauncherImpl.java:464)
at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplication(LauncherImpl.java:363)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at java.base/sun.launcher.LauncherHelper$FXHelper.main(LauncherHelper.java:1051)
Caused by: java.lang.RuntimeException: Exception in Application start method
at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:900)
at javafx.graphics/com.sun.javafx.application.LauncherImpl.lambda$launchApplication$2(LauncherImpl.java:195)
at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: java.lang.IllegalAccessError: class com.sun.javafx.fxml.FXMLLoaderHelper (in unnamed module @0x5fce9dc5) cannot access class com.sun.javafx.util.Utils (in module javafx.graphics) because module javafx.graphics does not export com.sun.javafx.util to unnamed module @0x5fce9dc5
at com.sun.javafx.fxml.FXMLLoaderHelper.<clinit>(FXMLLoaderHelper.java:38)
at javafx.fxml.FXMLLoader.<clinit>(FXMLLoader.java:2056)
at sample.Main.start(Main.java:13)
at javafx.graphics/com.sun.javafx.application.LauncherImpl.lambda$launchApplication1$9(LauncherImpl.java:846)
at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runAndWait$12(PlatformImpl.java:455)
at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
at javafx.graphics/com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at javafx.graphics/com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at javafx.graphics/com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
... 1 more
Exception running application sample.Main
我试着重新安装,但没有任何运气。我还尝试将getClass().getResource(...)
更改为getClass().getClassLoader().getResource(...)
或类似于父根=fxmlLoader.load(getClass().getResource(“/sample.fxml”);
,但仍然不起作用。
有类似的问题,像这样或这样的另一个。
在JavaFX11之前,无论何时调用与JavaFX相关的东西,都可以在SDK中获得所有可用的JavaFX模块。
但是现在必须包含所需的模块/依赖项。
--add-modules=javafx.controls
--module-path="C:\Program Files\Java\javafx-sdk-11\lib" \
--add-modules=javafx.controls,javafx.fxml
这是Duke.java文件: 更新:我将lib文件夹导入到我的项目中,现在错误消失了。但是在我运行项目时发生了另一个错误,这是“由以下原因引起的:java.lang.NullPointerException:输入流不能为null”
使用“mvn包”创建jar后,我使用以下命令从jar创建安装程序: 当尝试双击项目可执行文件(.exe由jpackage创建)时,它不会打开。从cmd运行时,我收到以下错误消息: C: \程序文件\项目\u可执行文件\u名称 奇怪的是,如果我双击jar(jpack用来创建程序映像的那个),它会启动我的应用程序。java-jar也是如此。当使用intellij和mvn javafx的“运行”按钮时,
我正在和几个朋友一起做一个项目,我们正在使用vscode,这样我们就可以有效地使用git(这是一个学校项目,所以IDE是不可协商的,不要告诉我使用不同的),我们遇到了一个问题,他们都不能运行这个javafx应用程序,我已经在那里测试了。一开始我在运行它时遇到了麻烦,并且得到了同样的错误,但是我今天早上修复了它,现在我放在那里的任何javafx文件都可以为我运行,只要我在json中有正确的vmarg
我想从我的javaFX项目创建exe文件。我已经将我的项目导出到可运行的jar文件中,用launch4j将其更改为exe,但当我用命令promp运行jar文件时,它显示“错误:缺少JavaFX运行时组件,运行此应用程序需要这些组件” 当我导出到时。jar最后警告了多行的“重复条目:module info.class”。这是原因吗?
我的应用程序从源代码处运行得非常好,但是当我编译到单个jar文件时,我得到了错误: 错误:缺少JavaFX运行时组件,而这些组件是运行此应用程序所必需的。 我使用作为我的存储库管理器,并且我的Maven安装是成功的。 注意:在我的构建工件中,我可以看到包含及其所有库
这里的Java新手。我想在VSCode上了解JavaFX,但是当我启动JavaFX时,它给了我这个错误。我试图在项目上添加引用的库和配置在上,但它给了我同样的东西。 这是我的配置。 谁能帮我?