纯e4 eclipse插件中的菜单贡献

时间:2014-08-25 07:53:49

标签: java eclipse eclipse-plugin e4

我正在编写一个eclipse插件,我想尽可能坚持使用e4编程模型。 我想做的第一件事是菜单和工具栏的贡献,但我已经卡住了。我在plugin.xml中定义了一个扩展程序:

<extension id="sampleid1" point="org.eclipse.e4.workbench.model">
    <fragment apply="always" uri="xmi/myplugin.e4xmi" />
</extension>

Inisde myplugin.e4xmi我尝试定义menu以及menuContribution片段以及命令和处理程序片段,但所有内容都会导致以下日志输出:< / p>

!ENTRY org.eclipse.e4.ui.workbench 1 0 2014-08-25 09:22:41.476
!MESSAGE Nothing to merge for "platform:/plugin/net.mysample/xmi/myplugin.e4xmi"

我错过了什么吗?或者是否还不能为eclipse IDE编写纯e4插件?如果是这样,我应该使用e4的哪些部分,我应该在哪里坚持使用3.x API?我已经实现了一些观点,发现基于注入的编程非常舒服。

1 个答案:

答案 0 :(得分:3)

这可能与bug 376486

有关

[Model] Eclipse 4 IDE无法通过片段或处理器扩展

  

目前Eclipse 4.2 IDE无法通过片段或处理器进行扩展,这使得Eclipse插件项目难以使用新的编程模型。

     

这是因为片段和处理器的处理完成了兼容性层,例如, plugin.xml到模型的转换没有完成,因此这些元素无法扩展。


This thread说明了同样的问题:

  

与兼容层结合使用尚不支持碎片   原因是初始化的顺序    Luna中的兼容性扩展点(例如&#34; views&#34;)将支持添加纯e4视图,但

但是:

  

所以Luna已经发布了。是否可以通过模型为片段提供片段?
  我使用Eclipse Luna和E4最后更新,但获得了与主题starter:

所描述的相同的消息
!ENTRY org.eclipse.e4.ui.workbench 1 0 2014-07-20 18:43:30.248
!MESSAGE Nothing to merge for "platform:/plugin/.../fragment.e4xmi"

a thread关于将e4元素导入任何基于E3的应用程序以实现&#34;真正的混合模式&#34; (即在基于E3的应用程序中使用E4编程模型,如IDE)
项目E4Examples/importworkbenchbridge