我希望能够在 Eclipse RCP 应用程序中定义透视图,而无需为其编写 java 类。这将使我能够改变这种观点,而无需重新编译源代码并删除不必要的 java 类。
目前,我确实在 java 类中定义了一个 Perspective,如果我想在不重新编译的情况下修改它,我可以使用不同的名称保存它,将首选项导出到 .epf
文件(从我正在运行的应用程序中)并将该 _persp=
行粘贴到我的应用程序 pluginCustomization.ini
中,在运行时使用 -Declipse.pluginCustomization=
指定.
这可行,但我无法使用 org.eclipse.ui/PERSPECTIVE_BAR_EXTRAS 使这些复制的透视图出现在附加栏中,这样的 xml 透视图几乎不可能编辑,因为它们是所有这些都在一行中,而且我仍然有一个我不使用的不需要的 java 类。
- 那么,在 Eclipse RCP 应用程序中,是否有一种方法可以在您的pluginCustomization 文件中定义透视图,而无需 Java 类支持?
- 如果是这样,您是否可以定义与文件相关的
_persp=
行,其中包含格式良好的xml
代码,或者您是否坚持使用 everythingcompactedononeline?
- 如果是这样,您是否可以定义与文件相关的
- 或者,还有其他方法可以实现我想要的吗?
最佳答案
我不确定这是否是您正在寻找的东西,但您可能想尝试创建自己的扩展点(请参阅 http://www.vogella.com/articles/EclipseExtensionPoint/article.html )。在这种情况下,您可能看起来像这样:
<extension-point id="my.perspectives" name="perspectives" schema="perspectives.exsd"/>
使用一个元素“perspective”,该元素具有“id”属性,“identifier”类型和“org.eclipse.ui.perspectives/perspective/@id”作为引用(或者您可以将其设置为“字符串”) "类型,如果您不想绑定(bind)到任何 Eclipse 标识符)。
在你的plugin.xml中,添加如下内容:
<extension
point="my.perspectives">
<perspective id="my.perpsective.id"/>
</extension>
然后您可以按如下方式处理您的扩展点:
for (IConfigurationElement element: Platform.getExtensionRegistry().getConfigurationElementsFor("my.perspectives")) {
String perspectiveId = element.getAttribute("id");
}
并用你的视角 id 做任何你想做的事情。希望有帮助。
关于java - 在 Eclipse RCP 应用程序中,您可以在您的pluginCustomization 文件中定义透视图吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19832256/