Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/352.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java FXMLLoader.load(getClass().getResource()中的文件路径引发异常_Java_Javafx_Path - Fatal编程技术网

Java FXMLLoader.load(getClass().getResource()中的文件路径引发异常

Java FXMLLoader.load(getClass().getResource()中的文件路径引发异常,java,javafx,path,Java,Javafx,Path,我尝试运行程序,但异常为: 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)

我尝试运行程序,但异常为:

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)
at Controllers.UserOptionsController.pokreniSimulacijuAction(UserOptionsController.java:90)
问题是getResource()中的路径:

配置路径时,我可以使用File.separator还是必须使用“/”?它与“/”一起工作。 我是在Windows10上运行这个程序的。
如果我使用“/”可以在其他操作系统上编译程序吗?

getClass()。getResource(..)可以返回null。请确保它不为null,然后传递到loadmethod@vmaroli它与fxmloader.load(getClass().getResource(“/View/DodajVozilo.fxml”))一起工作…
Class.getResource
和相关方法是一种跨平台的API;无论您在哪个操作系统上,它都希望分隔符是
/
。另外,要认识到,虽然资源通常是文件(可能打包在JAR文件中),但这一点很重要,它们在概念上与文件不同。不要使用
java.io.File
java.nio.File.*
API来访问资源。getClass().getResource(..)可以返回null。请确保其不为null,然后传递到loadmethod@vmaroli它与fxmloader.load(getClass().getResource(“/View/DodajVozilo.fxml”))一起工作…
Class.getResource
和相关方法是一种跨平台的API;无论您在哪个操作系统上,它都希望分隔符是
/
。另外,要认识到,虽然资源通常是文件(可能打包在JAR文件中),但这一点很重要,它们在概念上与文件不同。不要使用
java.io.File
java.nio.File.*
API来访问资源。
FXMLLoader.load(getClass().getResource(File.separator+"View"+File.separator+"DodajVozilo.fxml"));