当前位置: 首页 > 知识库问答 >
问题:

阶段图标javafx中出现NullPointerException错误

贲铭
2023-03-14

文件“icon.png”与类在同一个文件夹中。但是,如果我只是使用(新图像(icon.png)),然后它说java.lang.IllegalArgumentExcoop:无效的URL:无效的URL或资源未找到。但是现在添加getClass(). getResources...我得到了这个错误。这是我的代码:

package application;

import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.stage.Stage;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.scene.image.Image;

public class Main extends Application {
    public void start(Stage primaryStage) {
        try {
            Parent root = FXMLLoader.load(getClass().getResource("NewFile.fxml"));
            Scene scene = new Scene(root);
            primaryStage.setResizable(false);
            scene.getStylesheets().add(getClass().getResource("application.css").toExternalForm());
            primaryStage.setScene(scene);
            primaryStage.getIcons().add(new Image(getClass().getResource("icon.png").toExternalForm()));
            primaryStage.show();
        }
        catch(Exception e) {
            e.printStackTrace();
        }
    }

    public static void main(String[] args) {
        launch(args);
    }
}

下面是错误:

java.lang.NullPointerException
    at application.Main.start(Main.java:19)
    at javafx.graphics/com.sun.javafx.application.LauncherImpl.lambda$launchApplication1$9(Unknown Source)
    at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runAndWait$11(Unknown Source)
    at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runLater$9(Unknown Source)
    at java.base/java.security.AccessController.doPrivileged(Native Method)
    at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runLater$10(Unknown Source)
    at javafx.graphics/com.sun.glass.ui.InvokeLaterDispatcher$Future.run(Unknown Source)
    at javafx.graphics/com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
    at javafx.graphics/com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(Unknown Source)
    at java.base/java.lang.Thread.run(Unknown Source)

请帮我修一下。提前谢谢!

共有1个答案

南宫龙野
2023-03-14

NullPointerException错误是由于图像位置不正确造成的您引用了一些不存在的内容,您可以编辑您的帖子,向我们展示您的项目结构
应该是这样才能工作的!

 类似资料:
  • 有可用的组合键方法如下: 是否有任何方法可以捕获鼠标点击或触摸屏亭的任何组合以退出全屏锁定?

  • 这是我的项目结构: 我在这里做错了什么?或者eclipse在这里期待着NetBeans没有的东西?!?

  • 问题内容: 我正在上课的酒店管理软件上工作,我的代码遇到了一些问题。此时,我只是想将我在单独的类中创建的JPanel添加到主gui中。任何帮助将不胜感激。〜谢谢! 注意:错误发生在“ jpanel.add(“ Room”,room.getRoomPanel());“行上 代码:HotelSystem.java RoomSystem.java 问题答案: 您从未初始化 即使您确实对其进行了初始化,您

  • 我正在经历一个非常奇怪的行为,我怀疑这是JavaFX9 API中的一个bug,但我很谨慎,因为我更有可能遗漏了一些东西。 MCVE: 它给我带来的问题是,我无法为窗口大小/位置实现健壮的首选项保存,因为在Linux上,窗口会爬行。(场景宽度/高度可以作为一种变通方法,但仍然可疑。)

  • 下面是用eclipse IDE编写的Java代码... 线程“main”java.lang.NullPointerException在compile.execute.main(execute.java:17)中出现异常 你能告诉我如何解决这个错误吗?