0

我正在开发具有多个应用程序/插件的 Eclipse RCP 产品(基于 Eclipse 3.6)。以下是我遇到困难的用例:有 3 个插件 A、B 和 C。我需要在插件 A 和 B(不在 C 中)的“编辑”菜单中显示菜单贡献,只有当插件 C 是安装。如果未安装插件 C,则不应显示菜单贡献 - 即使处于禁用状态。在进行一些搜索时,我发现有一个属性测试器可以确定是否安装了插件 - 它被用作:

<with variable="platform">
    <test property="org.eclipse.core.runtime.isBundleInstalled" args="com.mybundle"/>
</with>

但是,当我尝试时,它对我不起作用。我不确定使用此属性是否与我尝试使用它的上下文相关。有人可以帮忙吗?如果无代码选项不可行,那么我将不得不以编程方式显示/隐藏菜单贡献,但我不知道理想情况下应该在哪里完成。我应该为插件 A 和 B 编写一个 PerspectiveListener 并PerspectiveActivated在验证 C 已安装后添加菜单贡献吗?

请帮忙。

谢谢和问候, Pradyumna

4

1 回答 1

1

我犯了一个错误,因为它isBundleInstalled不起作用。该变量platform不可用,因此我没有得到预期的输出。用它代替它就可以org.eclipse.core.runtime.Platform了。

于 2013-06-19T06:48:58.327 回答