在 JVM 服务器中更新 OSGi 捆绑软件

在 OSGi 框架中更新 OSGi 捆绑软件的过程取决于捆绑软件类型及其依赖性。 您可以在不重新启动 JVM 服务器的情况下更新应用程序的 OSGi 捆绑软件。 但是,更新中间件捆绑软件需要重新启动 JVM 服务器。

关于此任务

在典型 JVM 服务器中, OSGi 框架包含 OSGi 捆绑软件的混合,如下图所示。
包含应用程序的两个 OSGi 捆绑软件的 OSGi 框架,包含公共代码的库捆绑软件, IBM MQ IBM MQ 中间件捆绑软件以及 JCICS 系统捆绑软件。 束 A 依赖于库束。 束 B 依赖于库束,中间件束和 JCICS 束。

捆绑软件 A 和捆绑软件 B 是单独的 Java™ 应用程序,打包为单独的 CICS ® 捆绑软件中的 OSGi 捆绑软件。 这两个应用程序都依赖于打包在束 C 中的公共库。束 C 可单独进行管理和更新。 此外,束 B 依赖于 IBM® MQ 中间件束和 JCICS 系统束。

束 A 和 B 均可单独进行更新,而不会影响框架中的任何其他束。 但是,更新束 C 可能对依赖于它的两个束有影响。 束 C 中任何已导出的包仍保留在 OSGi 框架的内存中,因此,要拾取束 C 中的更改,还必须在该框架中更新束 A 和 B。

中间件束包含框架服务,可通过 JVM 服务器的生命周期进行管理。 例如,您可能具有要在框架中装入一次的本机代码,或者可能要添加驱动程序以访问其他产品,例如 IBM MQ

系统束由 CICS 提供,用于管理与 OSGi 框架的交互。 这些捆绑软件由 IBM 作为产品的一部分提供服务。 系统束的一个示例是 com.ibm.cics.server.jar 文件,该文件提供了用于访问 CICS 服务的大部分 JCICS API。