我正在尝试从软件包中的src /文件夹中获取图像,但是没有成功。
nekoPics[i] = tk.getImage(getClass().getResource(String.format("resources/pracs/neko/%s", nekosrc[i])));
有人建议吗?
是否将其复制到构建代码的任何地方?作为一个在src目录没有帮助,如果在执行时类是在bin目录(或jar文件)。
src
bin
另请注意,如果您的课程在一个包中,则Class.getResource默认情况下它将相对于该包起作用。因此,如果您的包是foo.bar,它将在寻找foo/bar/resources/pracs/neko/whatever。如果要使其绝对,则可以使用ClassLoader.getResource,也可以/在字符串的开头放置前导:
Class.getResource
foo/bar/resources/pracs/neko/whatever
ClassLoader.getResource
/
String resource = String.format("/resources/pracs/neko/%s", nekosrc[i]); nekoPics[i] = tk.getImage(getClass().getResource(resource));
要么
String resource = String.format("resources/pracs/neko/%s", nekosrc[i]); nekoPics[i] = tk.getImage(getClass().getClassLoader().getResource(resource));
当然,如果reousrces目录 实际上是 相对于您的软件包的,则不应这样做:)
reousrces