为了账号安全,请及时绑定邮箱和手机立即绑定

JavaFX FXML 应用程序无法运行

JavaFX FXML 应用程序无法运行

隔江千里 2021-11-17 10:27:25
我正在尝试按照此处的教程进行操作。但是,我的 IDE Eclipse 似乎不想使用它。我已经尝试将代码示例复制并粘贴到我的 IDE 中,但会弹出相同的错误。不幸的是,没有显示任何窗口。请帮我弄清楚这段代码有什么问题。错误: Exception in Application start method    java.lang.reflect.InvocationTargetException        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)        at java.lang.reflect.Method.invoke(Method.java:498)        at com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(LauncherImpl.java:389)        at com.sun.javafx.application.LauncherImpl.launchApplication(LauncherImpl.java:328)        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)        at java.lang.reflect.Method.invoke(Method.java:498)        at sun.launcher.LauncherHelper$FXHelper.main(LauncherHelper.java:767)    Caused by: java.lang.RuntimeException: Exception in Application start method        at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:917)        at com.sun.javafx.application.LauncherImpl.lambda$launchApplication$154(LauncherImpl.java:182)        at java.lang.Thread.run(Thread.java:748)    Caused by: java.lang.NullPointerException: Location is required.        at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3207)        at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3175)        at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3148)        at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3124)        at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3104)        at javafx.fxml.FXMLLoader.load(FXMLLoader.java:3097)
查看完整描述

1 回答

?
喵喵时光机

TA贡献1846条经验 获得超7个赞

我有两个问题导致程序无法正确显示。

一、线路

Parent root = FXMLLoader.load(getClass().getResource("registration_form.fxml"));

应该是

Parent root = FXMLLoader.load(getClass().getResource("/registration_form.fxml"));

此外,我的图形驱动程序已过时。

由于我的操作系统是 Ubuntu 18.04,因此更新它们的过程如下。

首先,我打开程序“Ubuntu 软件”,单击屏幕右上角的“软件和更新”,然后单击弹出窗口中的“附加驱动程序”选项卡。

然后,我选择了“来自 nvidia-driver-410 的 NVIDIA 驱动程序元包”并单击“应用更改”。

//img1.sycdn.imooc.com//619468ae00014a9007330488.jpg

这解决了我的问题,并允许程序正确显示。


查看完整回答
反对 回复 2021-11-17
  • 1 回答
  • 0 关注
  • 181 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信