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

JavFX FXML加载错误(Nullpointerexception)

茅星华
2023-03-14

是的,我知道这个问题经常被问到,我使用了搜索功能,但不能解决我的问题与这些答案,现在我累了搜索谷歌或其他任何地方。

public class Main extends Application {

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

@Override
public void start(Stage primaryStage) throws Exception {
    try {

        //Layout laden
        Pane pane = FXMLLoader.load(getClass().getResource("layout/main_layout.fxml"));

        //Scene erstellen und initialisieren
        Scene scene = new Scene(pane);
        scene.getStylesheets().add(getClass().getResource("css/main_layout.css").toExternalForm());
        primaryStage.setScene(scene);

        //Breite und Höhe der Stage setzen
        primaryStage.setWidth(1024);
        primaryStage.setHeight(768);

        primaryStage.setTitle("Untitled - jNotepad");

        primaryStage.show();
    } catch(IOException e) {
        e.printStackTrace();
    }
}
}

我的FXML文件在包de.toxiclab.jnotepad.layout中,这意味着Layout/main_layout.FXML中的路径是真实的,所以路径必须是正确的。

然后它给我打印了一个丑陋的例外:

javafx.fxml.loadException:/j:/eclipse%20workspace/jnotepad/bin/de/toxiclab/jnotepad/layout/main_layout.fxml:19

但我不明白,为什么有一个该死的Nullpointerexception,路径是100%正确的。

共有1个答案

从光启
2023-03-14

因此,在看到似乎以控制器类'NotepadController'为中心的错误后,我相信您看到这个NullPointerException的原因是节点尚未附加到场景。有鉴于此,您可能希望尝试将windoWevent.window_showed处理程序附加到方法中的那个点上。

例如:

您提到第199行是return((Stage)this.textpane.getScene().getWindow());

(Stage)this.addEventHandler(WindowEvent.WINDOW_SHOWN, new EventHandler<WindowEvent>() {
            @Override
            public void handle(WindowEvent event) {
                window = ((Stage)this.textPane.getScene().getWindow());
            }
 });

或者类似的东西。

错误的主要原因也有可能来自其他地方。祝你好运!有时这类问题可能有点棘手。

 类似资料:
  • 问题内容: 我在macOS sierra(10.12.5)上运行R(版本3.4.0),并且尝试使用xlsx库,该库要求使用rJava库。 当我尝试在R控制台中使用rJava加载时(无论是在RStudio中还是在终端中),都会收到以下错误消息,使我难以理解: 在这个问题上进行了搜索,我发现了许多类似的帖子(但每次都有一些不同的问题),其中最有前途的就是这个SO问题。 由于建议的步骤需要适应我的情况,

  • 我试图在JavaFX中实现一个非常简单的Raspberry Pi接口。我用的是一台电脑。基于fxml的布局和样式我的项目与css。我的问题是,尽管该应用程序在我的主计算机(从eclipse运行)上运行得很好,但它在Raspberry上也不工作,当我尝试在主计算机上运行导出的jar时也不工作。 我就是这样把纽扣剥皮的。当然,resources/images文件夹位于我的构建路径中。按钮的颜色与我在c

  • 我收到以下错误,我不确定为什么,因为我直接从模板中运行代码。有人在堆栈跟踪中看到了我没有看到的东西吗?它贴在下面。 “/Cfia中的服务器错误。网状物MVC模板。示例的应用。 远程服务器返回错误:(404)未找到。 描述:在执行当前web请求期间发生未处理的异常。请查看堆栈跟踪以了解有关错误的更多信息以及错误在代码中的起源。 异常详细信息:System. Net. WebException:远程服

  • 问题内容: 我一直有一些奇怪的问题。主要的问题是,在尝试将WSDL添加到新项目时,我始终收到以下错误: 这是error.log文件中记录的消息: 我验证了该URL上的应用程序已启动并正在运行,并且可以从Web浏览器访问WSDL,但是无论如何我始终会收到此错误消息。我在Windows 7机器上使用SoapUI 4.5.0(32位)。我也尝试了64位版本,但结果相同。无论我是否使用VPN,都会发生这种

  • 问题内容: 我的JSystem / Java / Eclipse环境有问题。 我收到此错误,但我不明白这是什么错误: 我想知道是否有人遇到过类似的问题,我认为我的环境对于解决它不是很重要,如果我能理解“ undergound”发生的事情,我希望自己解决问题。 非常感谢。 问题答案: 我认为这是当我两次加入图书馆时发生的。

  • 这是我的应用程序的文件夹结构 在我的文件,我像这样加载字体和资源 对于这个,运行将给出退出代码0。 在我家。dart我有以下课程: 我在其他地方使用,以显示图像(代码省略): 这座大楼没有错误。颤振博士-v没有给出任何错误,颤振分析-v也没有给出任何错误。apk似乎构建得很好,但当应用程序在我的手机上打开时,我在asset_bundle中发现以下错误。投掷: 发生异常。错误(无法加载资源:imag