我尝试在我的包中获取一个文件:
File file = new File(bundleContext.getBundle().
getResource("image/logo.jpg").toURI());
结果是 IllegalArgumentException,原因是“URI 方案不是“文件”。
这是合乎逻辑的,但是我应该如何使用这个 URL(bundle://28/image/logo.jpg)打开一个文件?
如果我使用常规的 ClassLoader,我会得到相同的结果。
编辑:
我的解决方案:
URL url = this.getClass().getClassLoader().getResource("image/logo.jpg");
InputStream in = new BufferedInputstream(url.openStream());