如何在fuse servicemix中安排osgi包?

时间:2011-02-22 10:44:41

标签: osgi quartz-scheduler apache-servicemix

我想在当天的特定时间重新启动osgi包。我正在使用apache-servicemix-4.3.0-fuse-02-00。

控制台明智地我想这样做。如果我的包ID是210

osgi:stop 210

osgi:start 210

我该如何安排这个?

1 个答案:

答案 0 :(得分:1)

如果您的servicemix启用了ssh控制台,则可以使用:

ssh smx@IP_TO_FRAMEWORK -p 8101 osgi:stop 210
ssh smx@IP_TO_FRAMEWORK -p 8101 osgi:start 210

但是,您需要在此处插入smx用户的密码...我还没有找到如何在此处使用基于密钥的身份验证。 (ssh-copy-id不起作用..)

另一种解决方案是将捆绑包放入deploy目录。可能简单的触摸就足够了。 (我不知道,如果更改时间戳就足以触发重新安装。)

还有第三种选择:编写一个将启动/停止另一个bundle的bundle,给定一个Java Timer,它将每天执行一次重启任务......

但是您应该检查是否无法更改捆绑包,因此不需要每天重新启动。