将 IntelliJ java 和 javaFx 升级到 11 和 gradle 到 5.1.1 之后。创建新图像时,我需要像这样声明完整目录:
new Image("file:src/main/java/sample/image.png");
以前我可以简单地做:
new Image("image.png")
任何想法为什么项目没有正确识别我的包对于 new Image("image.png") 它给了我这个错误,但在更新之前它工作正常:
java.lang.IllegalArgumentException: Invalid URL or resource not found
我想要完成的是在执行 jar 时使图像和 fxml 可见。我正在创建一个 jar 文件,当我为 fxml 或图像指定这样的路径时:
FXMLLoader loader = new FXMLLoader();
loader.setLocation(new URL("file:src/main/java/sample/login.fxml"));
Pane root = loader.load();
当我运行 jar 时,我得到:
Caused by: java.io.FileNotFoundException: src\main\java\sample\login.fxml (The system cannot find the path specified)
我怎样才能做到这一点,以便当我将它打包为 jar 时它可以找到文件,以及为什么在更新之前我可以简单地写: new Image("image.png") 现在我需要写: new Image("文件:src/main/java/sample/image.png”)?任何帮助将不胜感激!
至尊宝的传说
相关分类