【问题标题】:List bundle ID's only on servicemix仅在 servicemix 上列出捆绑 ID
【发布时间】:2013-04-07 12:05:18
【问题描述】:
我正在使用 ServiceMix,我试图列出一些捆绑包并仅检索那里的捆绑包 ID。
我正在尝试执行以下操作:
osgi:列表 | grep -i | awk xxx
我尝试使用 awk,但 ServiceMix 中没有提供。
我也尝试像这样使用 shell:exec:
osgi:列表 | grep -i |外壳:执行awk 'xxx'
但这也不起作用,也许我的方法完全错误。
有没有其他人有经验如何实现我只检索捆绑包的 id 的目标?
【问题讨论】:
标签:
osgi
apache-karaf
osgi-bundle
apache-servicemix
【解决方案1】:
您始终可以使用 Karaf 的 shell 语言(从 karaf 2.3.1 开始工作)
bundles = $.context bundles ;
echo "Printing bundle information" ;
each ($bundles) {
symbolicName = $it symbolicName ;
bundleId = (($it bundleid) toString) ;
echo "Symbolic name : " $symbolicName " Bundle Id : " $bundleId ;
}
运行时会输出类似于:
Symbolic name : org.apache.felix.framework Bundle Id : 0
Symbolic name : org.ops4j.pax.url.mvn Bundle Id : 1
Symbolic name : org.ops4j.pax.url.wrap Bundle Id : 2
Symbolic name : org.ops4j.pax.logging.pax-logging-service Bundle Id : 3