试了其他博客说的什么加 “file:”,虽然不会报URL解析错误了,但是图片根本加载不出来。我遇到的问题是:只有用绝对路径url才能正常读取图片,工程下的图片用相对路径无法读取,解决方案如下:
new Image(FxApplication.class.getResource("drawable/icon.png").toExternalForm());
可以将其封装成函数,以后就不用写这么一大坨了:
public static String toUrlPath(String path){
URL ret = FxApplication.class.getResource(path);
if(ret==null) throw new NullPointerException();
return ret.toExternalForm();
}
如图:
亲测有效!!!