Service 以编程方式安装/更新/删除捆绑包

Service 以编程方式安装/更新/删除捆绑包,service,osgi,bundle,declarative,Service,Osgi,Bundle,Declarative,我是osgi新手,想知道是否有一种集中的机制来更新、安装或删除捆绑包。有两种方法可以做到这一点:让应用程序从托管捆绑包的存储库中“拉”出捆绑包并自我更新,或者让外部供应应用程序“推”到应用程序 对于拉动式解决方案,我认为有: Eclipse的更新管理器使用的Eclipse P2。成熟、稳定,但可能有点棘手,而且我不确定P2是否能与EclipseEquinox以外的其他OSGi运行时一起工作 ApacheBundleRepository(OBR)更简单一些,它在OSGi规范中 对于推送解决方案

我是osgi新手,想知道是否有一种集中的机制来更新、安装或删除捆绑包。

有两种方法可以做到这一点:让应用程序从托管捆绑包的存储库中“拉”出捆绑包并自我更新,或者让外部供应应用程序“推”到应用程序

对于拉动式解决方案,我认为有:

  • Eclipse的更新管理器使用的Eclipse P2。成熟、稳定,但可能有点棘手,而且我不确定P2是否能与EclipseEquinox以外的其他OSGi运行时一起工作
  • ApacheBundleRepository(OBR)更简单一些,它在OSGi规范中

对于推送解决方案,我想让您看看Apache Ace,从您的问题来看,我认为这与您想要做的最接近。

有两种方法可以做到这一点:让您的应用程序从托管捆绑包的存储库中“拉”出捆绑包并自我更新,或者让外部供应应用程序将捆绑包“推”到您的应用程序

对于拉动式解决方案,我认为有:

  • Eclipse的更新管理器使用的Eclipse P2。成熟、稳定,但可能有点棘手,而且我不确定P2是否能与EclipseEquinox以外的其他OSGi运行时一起工作
  • ApacheBundleRepository(OBR)更简单一些,它在OSGi规范中

对于推送解决方案,我想说看看ApacheACE,从您的问题来看,我认为这与您想要做的最接近。

是的。您可以通过编程实现这一点,这意味着有大量捆绑包为您提供开箱即用的解决方案。这非常简单(也非常有趣),对于许多人来说,他们的第一个捆绑包就是一个小的“管理代理”(OSGi规范称之为这一部分)

绝对最简单的解决方案是。它跟踪目录并从那里安装/卸载。将其与Google Drive或Dropbox相结合,您就拥有了一个大规模的全自动部署模型(它还处理配置,这一点非常重要)

OSGi规范现在有一个OSGi包存储库(OBR)规范。这是一个非常强大的模型,用于描述允许管理代理计算/利用依赖关系的依赖关系(不仅仅是捆绑包)。这在Felix上得到了开箱即用的支持


有很多解决方案可以管理OSGi框架。Paremus、IBM Tivoli、ProSyst和许多其他公司都提供了商业支持。使用ApacheAce和fusebundles实现开源。

是。您可以通过编程实现这一点,这意味着有大量捆绑包为您提供开箱即用的解决方案。这非常简单(也非常有趣),对于许多人来说,他们的第一个捆绑包就是一个小的“管理代理”(OSGi规范称之为这一部分)

绝对最简单的解决方案是。它跟踪目录并从那里安装/卸载。将其与Google Drive或Dropbox相结合,您就拥有了一个大规模的全自动部署模型(它还处理配置,这一点非常重要)

OSGi规范现在有一个OSGi包存储库(OBR)规范。这是一个非常强大的模型,用于描述允许管理代理计算/利用依赖关系的依赖关系(不仅仅是捆绑包)。这在Felix上得到了开箱即用的支持


有很多解决方案可以管理OSGi框架。Paremus、IBM Tivoli、ProSyst和许多其他公司都提供了商业支持。使用Apache ACE和fusebundles实现开源。

欢迎使用Stackoverflow!我对你的问题投了否决票,因为它没有显示任何研究成果。将来提问时,请描述您已经尝试/发现的内容。你的问题越具体,你就越有可能得到帮助(他也越有可能是你的问题帮助了其他有同样问题的人)。欢迎来到Stackoverflow!我对你的问题投了否决票,因为它没有显示任何研究成果。将来提问时,请描述您已经尝试/发现的内容。你的问题越具体,你就越有可能得到帮助(他也越有可能是你的问题帮助了其他有同样问题的人)。我已经研究过fileinstall,但我想控制我要安装/卸载或启动/停止哪个捆绑包。例如,我需要安装/更新两个新的bundle,但我只想更新其中一个,然后推迟另一个。据我所知,FileInstall在捆绑包到达目标文件夹后立即安装/更新。我已经查看了FileInstall,但我希望能够控制要安装/卸载或启动/停止捆绑包的捆绑包。例如,我需要安装/更新两个新的bundle,但我只想更新其中一个,然后推迟另一个。据我所知,一旦文件包到达目标文件夹,就立即安装/更新它们。