找不到JavaFX的fxml错误

找不到JavaFX的fxml错误,java,nullpointerexception,javafx-2,javafx,fxml,Java,Nullpointerexception,Javafx 2,Javafx,Fxml,我正试图实现上述多语言支持解决方案 但是我得到了“java.lang.NullPointerException:需要位置” 请指出以下相关代码中的缺陷。 谢谢 MultiLanguageSupport.java LanguageUIFXML.fxml .properties文件是在package TextData中定义的。能否验证FXML文件和多语言支持类是否在同一个软件包中 另外,您正在调用非静态实例化fxmlloader的静态方法,在通过将ResourceBundle设置为空后,再次将其设置

我正试图实现上述多语言支持解决方案

但是我得到了“java.lang.NullPointerException:需要位置” 请指出以下相关代码中的缺陷。 谢谢

MultiLanguageSupport.java

LanguageUIFXML.fxml


.properties文件是在package TextData中定义的。能否验证FXML文件和多语言支持类是否在同一个软件包中

另外,您正在调用非静态实例化fxmlloader的静态方法,在通过将ResourceBundle设置为空后,再次将其设置为空

loader.setResources(ResourceBundle.getBundle("TextData.AllText", locale));
你能试试吗

root = (AnchorPane) loader.load(this.getClass().getResource(fxml).openStream());

此问题和您的问题看起来相同,因为堆栈跟踪是相同的。

很抱歉,这是两个拼写错误的结果&一个css路径不正确。 所需更改: 在fxml文件中, 应该是什么:

<URL value="@/css/langageuifxml.css" />

实际上是

<URL value="@css/langageuifxml.css" />


可能不是问题所在,但是
私有ListView listviewDemo=new ListView()
可能应该是
私有ListView listviewDemo
Nope,这不是问题,
this.getClass().getResource(fxml)
很可能返回null。你应该检查一下。再次否定:)我想很可能是FXML文件导致了错误。+1 Uluk是正确的。不要使用静态加载方法,它们容易混淆和出错。只需使用实例加载方法。静态FXMLLoader.load方法是。您好,我尝试用您的方法初始化root,但它仍然提供相同的NullPointerException,没有消息“location is required”。请原谅我的无知,但是静态方法ResourceBundle.getBundle()的替代方法是什么?它的实例似乎只在控制器的initialize方法中可用,但接受的解决方案并不能让我得到任何结果。我尝试使用不同的适当路径,错误堆栈跟踪没有变化
loader.setResources(ResourceBundle.getBundle("TextData.AllText", locale));
root = (AnchorPane) loader.load(this.getClass().getResource(fxml).openStream());
<URL value="@/css/langageuifxml.css" />
<URL value="@css/langageuifxml.css" />