从未调用控制器类中的JavaFX/FXML:initialize()

从未调用控制器类中的JavaFX/FXML:initialize(),javafx,javafx-8,fxml,Javafx,Javafx 8,Fxml,在尝试熟悉JavaFX时,我遇到了以下问题: 我使用Scene Builder生成一个FXML,其中我的控制器类指定为fx:controller=“application.MainController”,我使用Scene Builder生成的示例代码在相应的包中创建MainController类。 现在,虽然我没有看到任何错误消息,但显然在加载FXML(尝试断点和System.out.println)后从未调用initialize()方法。我错过了什么?啊,没关系。我已经寻找了一个多小时的解决方


在尝试熟悉JavaFX时,我遇到了以下问题:

我使用Scene Builder生成一个FXML,其中我的控制器类指定为
fx:controller=“application.MainController”
,我使用Scene Builder生成的示例代码在相应的包中创建MainController类。

现在,虽然我没有看到任何错误消息,但显然在加载FXML(尝试断点和
System.out.println
)后从未调用
initialize()
方法。我错过了什么?

啊,没关系。我已经寻找了一个多小时的解决方案,但事实证明Eclipse或VM使用了我的FXML的缓存版本,其中还没有定义控制器类。。。重新启动Eclipse修复了它。有没有比重新启动更简单的方法?在包资源管理器中点击刷新没有帮助。我必须为这个问题打开一个新的线程吗?在使用eclipse时,每当您更改
FXML
或其他文件(例如
css
)时,您总是必须
清理您的项目。使用该插件,您可以从项目中编辑css和FXML文件(或打开SceneBuilder)。更改这些文件时,我从不需要清理项目。此外,如果您需要进一步帮助,请发布一个。