如何添加目标的自定义包部分



我正在Eclipse中开发server-allinone。我想做一些自定义包是Target上运行的基本包的一部分。有办法从配置中做到这一点吗?

从概念上讲,在目标上运行的内容由三个逻辑部分组成:

  1. 实际的OSGi框架实现(Apache Felix, Equinox,…)
  2. Apache ACE提供的"管理代理"。
  3. 所有组成你的应用的bundle。

任何属于#3的部分都可以通过ACE轻松安装、更新和卸载。ACE还有一种机制,允许管理代理(#2)更新自身(这显然是一个特例)。这就是ACE停止的地方,它没有内置机制来更新#1,尽管也有一些关于提供机制的讨论。你必须在某个点上划清界限,因为除此之外,你还可以问自己谁来更新JVM、操作系统和引导加载程序。

不管怎样,回到你的问题。如果你想让那些自定义bundle成为目标上运行的基本bundle的一部分,从概念上讲,它们会成为框架的一部分,而你在ACE中没有办法更新它们。如果可以,只需创建一个自定义启动程序,除了安装管理代理之外,还安装这些包。如果可以,则需要将这些包添加到实际的管理代理包中,以便它们成为其中的一部分。这样你就可以将它们作为bundle的一部分进行更新。但是,我想问您为什么这些包不能成为应用程序的一部分?它们必须预先安装(可更新或不可更新)是否有特殊原因?

相关内容

  • 没有找到相关文章

最新更新