如何在功能安装期间建议p2添加存储库,以防尚未安装该功能的依赖项?

时间:2012-11-07 11:36:11

标签: manifest p2

我正在设计一个Eclipse功能,其中包含需要安装目标中可能存在的依赖项的bundle,但不一定是这种情况。我想避免安装不必要的IU。我想知道如何建议p2安装程序我想要安装一个功能,只有在安装中没有所需的IU并提供存储库位置才能下载IU。

依赖于IU D的主IU M的期望场景是:

  1. p2尝试安装M,发现它需要D
  2. p2发现当前安装中缺少D
  3. 根据安装建议,p2从与D
  4. 关联的存储库URL中获取D.
  5. p2安装D
  6. p2安装M

1 个答案:

答案 0 :(得分:0)

AFAIK,既不可能

  • 仅在不满足依赖关系时才有条件地添加p2存储库,
  • 在安装之前添加p2存储库 - 您只能添加p2存储库,例如在安装特征期间,然后可以在下一个操作中使用该特征,例如,更新。

但是,您可以通过在您自己的p2存储库中包含具有您的功能的依赖关系的p2存储库来实现您的用例。

从技术上讲,有不同的解决方案,但最简单的可能是创建一个所谓的“复合存储库”,其中既包含具有您自己内容的存储库,也包含具有外部依赖关系的存储库。