繁体   English   中英

从Eclipse RCP中的另一个插件激活一个插件

[英]Activate a plugin from another plugin in Eclipse RCP

我有2个从菜单启动时可以正常工作的插件。 但是,当我单击第一个插件的UI上的按钮时,我想启动第二个插件。

我已经按照建议的方式研究了getBundle()。start()方法: https : //www.eclipse.org/forums/index.php/t/99869/但它没有产生任何结果。 当在控制台上打印时,第二个捆绑软件将其捆绑软件状态显示为“活动”,但其UI不在屏幕上显示。

任何帮助将不胜感激!

让您的第二个插件提供一个API,该API显示单击按钮时第一个插件可以调用的图形。 该API可能就像调用一个方法一样简单,可能与您在菜单中使用的代码相似。

在第二个插件中,将包含API的程序包添加到MANIFEST.MF的“导出程序包”列表中(在MANIFEST.MF编辑器中,您可以在“导出的程序包”列表中的“运行时”选项卡上执行此操作)。

在第一个插件中,将第二个插件添加到其依赖项中-MANIFEST.MF中的“ Require-Bundle”列表(在编辑器中,这是“ Dependencies”选项卡上的“ Required Plug-ins”)。

我提到了以下文章:以编程方式显示Eclipse插件的视图

以下代码终于对我有用:

Display.getDefault().asyncExec(new Runnable() {
    @Override
    public void run() {
       PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().showView("viewId");

    }
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM