开发组合捆绑软件

组合捆绑软件会将共享的捆绑软件组合到聚集中。 它向 OSGi 应用程序提供特定版本的一个或多个包。 还可以通过将一个或多个组合捆绑软件添加到应用程序的组合单元来扩展已部署的应用程序。 您可以使用 OSGi 应用程序工具来开发组合捆绑软件。

有关此任务

当您要确保 OSGi 应用程序中的一组共享捆绑软件具有一致的行为时,请使用组合捆绑软件来给应用程序提供该组捆绑软件。 如果捆绑软件和组合捆绑软件中都以相同版本提供了某个必需软件包或服务,那么供应过程将从组合捆绑软件中选择该软件包或服务。

如果您要扩展包含 OSGi 应用程序的已部署业务级应用程序,并且不想停止该应用程序或修改底层的 EBA 资产,请将一个或多个组合捆绑软件添加到组合单元。

组合捆绑软件将打包为组合捆绑软件归档 (CBA) 文件。 该文件是具有 .cba 文件扩展名的压缩归档文件。 如果组合捆绑软件是企业 OSGi 应用程序的一部分,那么可以将 CBA 文件直接包含在该应用程序的企业捆绑软件归档 (EBA) 文件中,也可以从内部捆绑软件存储库或可处理组合捆绑软件的外部存储库按引用来拉入该文件。 组合捆绑软件可以直接包含其 CBA 文件中的捆绑软件。 它还可以按引用来包含同一个 EBA 文件中与 CBA 文件一起托管的捆绑软件或同一捆绑软件存储库中安装的捆绑软件。

组合捆绑软件在组合捆绑软件清单文件 META-INF/COMPOSITEBUNDLE.MF中进行了描述。 此清单文件将列示直接包含在组合捆绑软件中的 OSGi 捆绑软件以及同一个 EBA 文件与组合捆绑软件一起托管的引用捆绑软件或同一个捆绑软件存储库中的捆绑软件。

如果要使用组合捆绑软件来扩展已部署的应用程序,那么必须在内部捆绑软件存储库或可处理组合捆绑软件的外部存储库中安装该 CBA 文件。 如果将组合捆绑软件安装在捆绑软件存储库中,并且该组合捆绑软件按引用包含捆绑软件,那么必须确保引用的捆绑软件在该存储库中也可用。 如果使用内部捆绑软件存储库,并且该组合捆绑软件直接包含捆绑软件,那么包含的捆绑软件不会单独列出,并且只可用作该组合捆绑软件的一部分。 有关更多信息,请参阅 组合捆绑软件

Rational® Application Developer Version 8.5 提供了用于创建和打包组合捆绑软件的图形支持。 您也可以使用其他工具。

过程

  1. 开发捆绑软件。
  2. 创建组合捆绑软件清单。

    大多数 OSGi 应用程序工具 (包括 IBM® Rational Application Developer) 可帮助您创建组合捆绑软件清单。 另请参阅 示例 :OSGi 组合捆绑软件清单文件

  3. 将直接包含的捆绑软件和组合捆绑软件清单打包为具有 .cba 文件扩展名的压缩文件。
    注: 文件扩展名必须为.cba,但组合捆绑软件名称不需要包含 cba
  4. 检查是否所有引用的捆绑软件在 EBA 文件(如果组合捆绑软件是企业 OSGi 应用程序的一部分)或可处理组合捆绑软件的捆绑软件存储库(例如,内部捆绑软件存储库)中均可用。
  5. 将 CBA 文件添加到 EBA 文件或捆绑软件存储库。

下一步做什么?