有条件地卸载OSGi功能

时间:2015-06-17 12:12:22

标签: continuous-integration osgi jbossfuse

我为jboss-fuse构建OSGi功能的持续集成。构建功能(并发布到工件库)后,将建立SSH到OSGi控制台并执行以下命令:

features:uninstall xyz
features:install xyz

这在安装xyz时有效,否则以明显的失败结束:

Error executing command: Feature named 'xyz' is not installed

有没有办法如何条件卸载给定的功能?例如,使用shell:if命令?或者其他方式如何自动重新安装给定的功能?

1 个答案:

答案 0 :(得分:0)

据我所知,您使用Karaf的一部分在jboss容器中安装您的功能。

  1. 您可以将kar服务(org.apache.karaf.kar.KarService)注入测试并使用其中的安装/卸载功能。

  2. 如果你正在远程工作(我认为你是),你可以使用JMX MBean org.apache.karaf:type = feature,name = root来远程安装/卸载你的功能。