【发布时间】:2018-03-07 14:09:18
【问题描述】:
我曾经使用过 IPluginRegistry 来获取所有插件,但现在在新版本中,它的一些方法实现已被删除,例如 getPluginRegistry。
IPluginRegistry pReg = Platform.getPluginRegistry();
IPluginDescriptor[] plugins = pReg.getPluginDescriptors();
IPluginPrerequisite[] pPrereqs = plugins[i].getPluginPrerequisites();
上面的代码有替代方案吗?
我也不能像下面的 Eclipse 4.3 中的插件 ID 获取插件,getPlugin(plugin_id) 方法已被弃用,并在新版本中删除了它们的实现。下面的代码也有其他选择吗?
Plugin plugin = Platform.getPlugin(pluginId);
boolean bool = plugin instanceOf MyCustomPlugin;
MyCustomPlugin.java
public abstract MYCustomPlugin extends AbstractUIPlugin{
}
如果我使用下面的捆绑包,我只能获得没有插件名称的包名称,例如 com.plugins.pluginPack 而不是 com.plugins.pluginPack.MyCustomPlugin。我需要完整的插件,而不仅仅是包名。
Bundle bundle = Platform.getBundle(pluginId);
如果有人帮助我,我将不胜感激! 谢谢。
【问题讨论】:
-
为什么需要这个?当我们不确切知道您想要什么数据时,就更难回答了。
-
@greg-449 我的代码需要 pluginPrerequisites。如果您能帮助我,我将不胜感激!
标签: java eclipse eclipse-plugin osgi-bundle