gpt4 book ai didi

java - 从 osgi 包访问资源 : bundle scheme in the URL lead to a malformed exception

转载 作者:太空宇宙 更新时间:2023-11-04 11:50:15 25 4
gpt4 key购买 nike

问题

有没有办法在 osgi 上下文中使用“bundle”作为方案从其构造函数构建 java.net.URL 对象?

示例

URL url = new URL("bundle://<bundle-id>/path/file.txt");
InputStream in = url.openStream();
...

当流打开时,此代码会导致格式错误的异常(未知协议(protocol))。我不知道osgi平台如何将新方案注册到java.net.URL

背景和理想解决方案

我想通过配置管理配置一项服务。此配置包含一个用于设置文件路径的属性。我希望消费者能够将文件存储在他想要的地方(文件系统、内部 bundle 甚至互联网)。

前面的示例可能很棒,因为代码很简单,并且消费者可以提供以下形式的路径:“bundle:///path/file.txt”、“file:///path/file.txt”、“http:///path/file.tx”,但不幸的是它不起作用。

最佳答案

没有。只有框架可以构造这些 URL。您可以使用 Bundle 对象返回包中内容的 URL。

关于java - 从 osgi 包访问资源 : bundle scheme in the URL lead to a malformed exception,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41905130/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com