我正在尝试获取捆绑包的列表,这些捆绑包要么正在导入我的捆绑包正在导出的服务(我找不到获取其他捆绑包清单的方法),要么是获取订阅了我的捆绑包正在发布的服务的捆绑包列表。
到目前为止,我正在尝试列出其他捆绑包正在使用的所有 ServiceReference,以查看它们是否正在使用我的,但没有成功。
谢谢你。
我正在尝试获取捆绑包的列表,这些捆绑包要么正在导入我的捆绑包正在导出的服务(我找不到获取其他捆绑包清单的方法),要么是获取订阅了我的捆绑包正在发布的服务的捆绑包列表。
到目前为止,我正在尝试列出其他捆绑包正在使用的所有 ServiceReference,以查看它们是否正在使用我的,但没有成功。
谢谢你。
使用已注册服务的 ServiceReference,您可以调用 getUsingBundles 方法来查找当前正在使用该服务的捆绑包。
你也可以试试这个(在 OSGi 控制台中):
install http://downloads.skysail.io/skysail-webconsole/webconsole.all.jar
start <id of the new bundle>
在浏览器中打开http://localhost:2002并导航到“服务”单击有问题的服务检查“服务详细信息”页面的“使用捆绑包”行
请注意,这个项目(https://github.com/evandor/skysail-webconsole)目前只是一个概念验证。但它可能已经对某些用例有用。
(顺便说一句,我对任何形式的反馈都很高兴;)