我目前正在开发一个插件,它将获取任何给定插件的每个扩展的列表。
我的问题是这些信息都在plugin.xml
内,我不知道如何在不解析文件的情况下获取它们。
我一直在关注Eclipse的Manifest编辑器,但我找不到它如何获得扩展列表。
简而言之,这是选择了扩展选项卡的清单编辑器的示例:
我希望获得一个List<String>
来保存这些扩展点的名称。
答案 0 :(得分:0)
您可以使用以下内容从扩展程序注册表中获取插件使用的扩展名:
IExtensionRegistry reg = Platform.getExtensionRegistry();
Bundle bundle = Platform.getBundle("plugin id");
String id = Long.toString(bundle.getBundleId());
String name = bundle.getSymbolicName();
IContributor contributor = new RegistryContributor(id, name, null, null);
IExtension [] extensions = reg.getExtensions(contributor);