为什么必须在Eclipse RCP中定义两次依赖项?

时间:2010-02-17 17:29:13

标签: eclipse eclipse-plugin eclipse-rcp

我有一个名为proj.a的Eclipse RCP插件项目。

我有另一个Eclipse RCP插件项目proj.b,其中包含产品定义文件。该项目的使用取决于proj.a插件。

当我更改proj.a时,说要包含JUnit测试,对JUnit的依赖会自动添加到proj.a的构建路径中。

但是当我去运行我在proj.b中定义的产品时,我必须手动将依赖项添加到proj.b中的产品定义中。

为什么? eclipse难道不知道该产品依赖于JUnit?或者这是Buckminster和Maven之类的问题域?

3 个答案:

答案 0 :(得分:1)

我不确定这会有所帮助,但如果您希望下游的其他插件能够看到插件A具有的依赖项,则需要重新导出依赖项。您可以在PDE编辑器(属性按钮)

中的“依赖关系”选项卡上执行此操作

答案 1 :(得分:1)

产品文件列出了整个依赖关系图。如果你在plugin.a中为Junit添加一个依赖项,就像你说plugin.a在没有JUnit的情况下无法运行。产品文件列出了在其他插件中定义为依赖关系的所有插件。 所以我想知道为什么你添加Junit作为你的plugin.a的依赖 最佳做法是创建一个单独的插件,其中包含引用plugin.a和Junit的所有测试用例。这个新创建的插件没有在您的产品文件中列出(我想发布最终版本的JUnit和Testcases?) 此外,无需手动添加依赖项在产品编辑器中,您有一个“添加所需插件”按钮,可以为您完成该任务。

答案 2 :(得分:0)

您不必手动添加依赖项;有一个“添加必需的插件”按钮。