使用 wsadmin 命令添加或除去 OSGi 组合单元的扩展

使用 addOSGiExtensionaddOSGiExtensions 命令将组合捆绑软件扩展添加到包含企业 OSGi 应用程序的组合单元。 类似地,使用 removeOSGiExtensionremoveOSGiExtensions 命令除去组合捆绑软件扩展。 使用 listOSGiExtensions 命令来列示当前已添加至组合单元的所有扩展。

准备工作

本主题假设您开发了一个组合捆绑软件并已将其添加至内部捆绑软件存储库或可处理组合捆绑软件的外部存储库。 请参阅 开发组合捆绑软件

您可以按本主题中所述使用 wsadmin 命令来管理组合单元的扩展,也可以按 添加或除去 OSGi 组合单元的扩展中所述使用管理控制台来管理组合单元的扩展。

有关此任务

将 OSGi 应用程序的企业捆绑软件归档 (EBA) 文件作为资产导入后,可以更新现有捆绑软件的版本,但无法将额外的捆绑软件添加到该资产。 然而,在将资产作为组合单元添加到业务级别应用程序后,可以通过将一个或多个组合捆绑软件添加到组合单元来扩展该业务级别应用程序。

可以将组合捆绑软件添加到组合单元或从组合单元中除去组合捆绑软件。 要将某个扩展更新为具有较新构成捆绑软件的扩展,请从组合单元中除去组合捆绑软件,然后添加该组合捆绑软件的新版本。

过程

  1. 可选: 列出组合捆绑软件扩展。
    使用 listOSGiExtensions 命令可列出当前添加到组合单元的所有扩展的符号名称和版本。
    AdminTask.listOSGiExtensions('-cuName cu_name')
    注: listOSGiExtensions 命令的输出已格式化,以便您可以复制扩展列表,然后将其粘贴到 removeOSGiExtensions 命令中。

    更多信息,请参阅 listOSGiExtensions 命令

  2. 添加或除去组合捆绑软件扩展。
    • 将一个或多个组合捆绑软件作为扩展添加到组合单元。
      使用 addOSGiExtensionaddOSGiExtensions 命令:
      AdminTask.addOSGiExtension('
        -cuName cu_name 
        -symbolicName cba_symbolic_name 
        -version cba_version
      ')
      AdminTask.addOSGiExtensions([
        '-cuName', 'cu_name', 
        '-extensions', 
          'cba1_symbolic_name;cba1_version
           cba2_symbolic_name;cba2_version
           cba3_symbolic_name;cba3_version
          '
      ])

      该组合捆绑软件必须在内部捆绑软件存储库中可用,或在可处理组合捆绑软件的外部存储库中可用。

      要查找可供您添加至组合单元的扩展,请使用 listAvailableOSGiExtensions 命令:
      AdminTask.listAvailableOSGiExtensions('-cuName cu_name')

      有关更多信息,请参阅 addOSGiExtensions 命令addOSGiExtensions 命令listAvailableOSGiExtensions 命令

    • 从组合单元中除去一个或多个组合捆绑软件扩展。
      使用 removeOSGiExtensionremoveOSGiExtensions 命令:
      AdminTask.removeOSGiExtension('
        -cuName cu_name 
        -symbolicName cba_symbolic_name 
        -version cba_version
      ')
      AdminTask.removeOSGiExtensions([
        '-cuName', 'cu_name', 
        '-extensions', 
          'cba1_symbolic_name;cba1_version
           cba2_symbolic_name;cba2_version
           cba3_symbolic_name;cba3_version
          '
      ])
      注: listOSGiExtensions 命令的输出已格式化,以便您可以复制扩展列表,然后将其粘贴到 removeOSGiExtensions 命令中。

      更多信息,请参阅 removeOSGiExtension 命令removeOSGiExtensions 命令

  3. 将更改保存到配置库。

    要保存配置更改,请使用以下命令:

    AdminConfig.save()

    如果您扩展了已部署的 OSGi 应用程序,那么将下载组合捆绑软件,包括其构成捆绑软件。

下一步做什么?

如果打算在此时更新组合单元,请检查是否已完成下载所有捆绑软件。 请参阅 检查 OSGi 组合单元的更新状态