【发布时间】:2017-01-28 00:27:55
【问题描述】:
问题
有没有办法从其构造函数构建一个 java.net.URL 对象,并在 osgi 上下文中使用“bundle”作为方案?
示例
URL url = new URL("bundle://<bundle-id>/path/file.txt");
InputStream in = url.openStream();
...
当流打开时,此代码会导致格式错误的异常(未知协议)。不知道osgi平台如何注册新的scheme到java.net.URL
背景和理想的解决方案
感谢配置管理员,我想配置一项服务。此配置包含设置文件路径的属性。我希望消费者能够将文件存储在他想要的位置(文件系统、包内甚至互联网)。
前面的例子可能很棒,因为代码很简单,消费者可以提供以下形式的路径:“bundle:///path/file.txt”、“file:///path/file.txt”、 “http:///path/file.tx”,但不幸的是它不起作用。
【问题讨论】:
标签: java url resources osgi protocols