已安装的p2可安装单元的Bundlename

时间:2015-05-08 12:10:42

标签: java osgi equinox p2

我想在安装之前获得Bundle从p2可安装单元安装后的名称。

例如,我有一个Installable Unit Feature组,其中包含以下feature.xml。

<feature
  id="com.xyz.example.feature"
  label="Feature"
  version="1.0.0.qualifier">

<plugin
      id="com.xyz.example2"
      download-size="0"
      install-size="0"
      version="0.0.0"
      unpack="false"/>

<plugin
      id="com.xyz.example3"
      download-size="0"
      install-size="0"
      version="0.0.0"
      unpack="false"/>

</feature>

安装Feature后,当我列出所有bundle时,Bundle将具有id的名称。 在安装之前,如何以编程方式从可安装单元中获取此ID。

1 个答案:

答案 0 :(得分:1)

IIinstallableUnit接口扩展IVersionedId,它为您提供#getId方法。对于osgi.bundle类型的IU,ID是BSN(包符号名称)。

检查http://help.eclipse.org/luna/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Freference%2Fapi%2Forg%2Feclipse%2Fequinox%2Fp2%2Fmetadata%2FIVersionedId.html