use*_*930 13 service osgi list
有一个运行Equinox的OSGi应用程序.我想看看应用程序提供的服务.我怎样才能做到这一点?
Nei*_*ett 14
来自gogo shell类型:
inspect cap service
Run Code Online (Sandbox Code Playgroud)
这将显示所有捆绑包注册的所有服务.如果要显示特定包的服务,请键入:
inspect cap service <id>
Run Code Online (Sandbox Code Playgroud)
<id>您感兴趣的软件包的数字包ID 在哪里.
Dan*_*ell 13
这取决于您是指交互式,使用OSGi shell还是以编程方式从您的应用程序.
交互式
您可以使用Equinox控制台.见'服务'.要仅查看已部署的服务,您需要使用LDAP过滤器.这是一个例子:
(objectClass=my.package.name.*)
Run Code Online (Sandbox Code Playgroud)
另请参阅@Neil Bartlett的答案,这可能更容易,因为您可以通过捆绑ID进行约束(假设您知道它,但这很容易找到).
编程方式
使用ServiceTracker方法.尼尔也写了所有这些,所以一定要给他你的赞成:)
| 归档时间: |
|
| 查看次数: |
9425 次 |
| 最近记录: |