我对这些资源的相对路径有问题,所以我在另一个stackoverflow问题中找到了,这说明这是一个有效的方法:
ClassInTheSamePackageOfTheResource.class.getResourceAsStream('resource.xml');
可悲的是,这不行.
有任何想法吗?谢谢!
PS: ObvIoUsly I cannot use absolute paths,and I’d like to avoid environment variables if possible
您可以将.zip扩展名添加到您的jar文件中,然后将其打开,以确保您的资源被包含在预期的位置.
我总是使用这样的绝对路径:
InputStream input = this.getClass().getResourceAsStream("/image.gif");
当使用绝对路径时,“/”是jar文件中的根文件夹,而不是主机的根文件夹.