问题标签 [e4]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
70 浏览

eclipse - 在哪里可以找到 cvs 中或 subversion 中的 eclipse 源?

我最终试图关注这个页面:

http://wiki.eclipse.org/E4/Running_the_demos

但是,一些项目集引用了 CVS 中不再存在或已移动的路径。例如 org.eclipse.swt。我在 git 中没有看到 org.eclipse.swt,但我在 subversion 中看到了它:

http://dev.eclipse.org/viewsvn/viewvc.cgi/org.eclipse.swt/

所以,它存在,但是除了从viewvc逐个文件之外,我如何检索它?

我可以写一个脚本。但是,某个地方的某个人知道如何获取上面提供的文件。你是那些人中的一员吗?

Mote 我不是问在哪里可以找到 org.eclipse.swt。给定一个在 subversion 中的 eclipse 源的路径,我可以在哪里签出该源?

0 投票
1 回答
2402 浏览

eclipse - Eclipse e4 和插件开发

是否可以使用 Eclipse e4 孵化器创建 Eclipse 插件(例如视图部件)?还是 e4 仅对“基于窗口”的应用程序有用?

我已经检查了如何使用 E4 编程模型创建视图作为 Eclipse 4.2 或更高版本的插件?,但这并没有给我一个有用的答案。

补充:我想创建一个 Eclipse 插件而不是一个独立的 rcp 应用程序。

0 投票
1 回答
1382 浏览

java - Eclipse RCP 使用 e4 工具

如何使用 e4 工具最小化或最大化 RCP 应用程序窗口中的视图。我有 2 个视图,一个是表格,另一个是欢迎页面,我正在尝试增加表格视图的宽度,以便占用一半以上的窗口空间。我正在使用 e4 工具中的 Application.e4xmi 自定义 UI?我尝试使用容器空间,但它不起作用?谢谢您的帮助。

0 投票
1 回答
1133 浏览

java - Eclipse e3 到 e4 迁移/适配(首选)- 建议

我得到了什么

我有一个几乎完成的 e3 应用程序,但需要 e4 的依赖注入功能,因此我搬到了 Kepler。

现在在 e4 中,如果我将我的应用程序作为 e3 应用程序运行,则 e3 插件正在工作。但是如果我更改为Application.e4xmi系统失败。(不知何故期待这个)

问题

如何将我的 e3 插件移动到 e4 以便我的观点和视图正常工作(我有很多 em!而且我无法删除它们 - 如果添加了插件,我需要扩展它们!)还有菜单贡献,处理程序/命令需要工作(我的fragment.e4xmi中没有任何内容被添加到 gui)

到现在为止我做了什么

我将我的 api 更改为 e4,因此我不再使用IWorkbenchPlatformUIViewPart接口(还有一段路要走,只在一个插件中这样做以用于测试目的)

将我的plugin.xml(e3 代码)转换为 e4 fragment.e4xmi(但发现(指向 stackoverflow 的链接)在 e4 中提供的视图/透视图已损坏。)

我在我的plugin.xml中添加了fragment.e4xmi作为扩展名并删除了其他所有内容(e3 样式)

资源

  1. 堆栈溢出
  2. 拉斯沃格尔
  3. 乔纳斯·赫尔明

编辑/更新

  1. 错误 376486 - Eclipse 4 IDE 不能通过片段或处理器扩展- 那么如何扩展您的 e4 应用程序 - 如果它不能通过片段或处理器工作?
  2. 为了提高解决方案的可能性,我将问题分开并在此处描述了一部分
0 投票
1 回答
1426 浏览

eclipse - 使用从 Eclipse 3.8 到 4.x 的兼容层

我有一个 Eclipse 3.x 插件,它有一个产品文件,我通过它启动应用程序。该产品使用 eclipse 工作台作为其应用程序参数org.eclipse.ui.ide.workbench,我什至尝试了org.eclipse.ui.e4.workbench.E4Application.

我按照本教程中概述的在我的产品依赖项中添加org.eclipse.emf.ecore和功能的步骤进行操作。org.eclipse.emf.common

当我启动该应用程序时,它启动并且似乎工作正常,但没有 E4 的外观和感觉,并且某些 E4 功能(如首选项菜单中常规->外观下的主题首选项)不起作用。

我还缺少其他东西吗?

0 投票
1 回答
937 浏览

dependency-injection - Eclipse Kepler 3.x 中的依赖注入

我在 Eclipse 3.7 中有一个工作插件,带有Views一个Perspective.
现在我尝试将其移至 Eclipse Kepler 4.3,因此我遵循Jonas Helming 的教程
我所有的视图都基于TemplateView另一个插件中的一个。这TemplateView被转换为e4样式POJO视图。
我的插件对此进行了扩展TemplateView并添加了包装类(如教程中所述)。

e3如果我以风格运行我的应用程序(意味着TemplateView正在扩展ViewPart)一切都很好并且Perspective被添加了。但是当我将它更改为e4样式时(意味着TemplateView正在扩展并且POJO我在我plugin.xml的.PerspectiveViews

mye3 View并不是很有趣,因为它主要使用我的自定义 api(这只会在这里混淆并且它工作正常 - 因为它以 开头e3

这是e4包装类:

这个问题是这个问题的一部分,但没有欺骗

0 投票
1 回答
3900 浏览

java - org.eclipse.e4.core.di.InjectionException:找不到可满足的构造函数

我正在尝试将 E3.X 应用程序移植到 E4 并遵循 Lars Vogel 的教程。我创建了一个视图包装器,它扩展了 DIViewPart 类,视图本身在构造函数上使用依赖注入,并在我的 plugin.xml 中引用了视图包装器。

但是,在启动应用程序时会引发异常:

即使经过几个小时的谷歌搜索,我也不知道出了什么问题。也许我只是在寻找错误的东西,但我现在一无所知。如果有人能指出我缺少的东西,我会很高兴。

只是为了确保我在下面附加了受影响的视图源代码:

任何帮助表示赞赏并提前感谢。

编辑: Stefan 指出,这个问题可能与 e4 在构造函数调用期间不知道正确的组合这一事实有关,并且以下代码应该可以解决问题:

可悲的是,情况并非如此。异常发生了变化,但原因可能仍然相同:

我的假设是依赖注入作为一个整体不能正常工作,但我不知道为什么,因为我所做的一切都与我找到的教程中的完全一样。我需要添加 .e4xmi 吗?

0 投票
2 回答
3621 浏览

rcp - 如何从代码中获取 Eclipse 4 应用程序的命令行参数

我需要以某种方式获取正在运行的 Eclipse 4 应用程序的命令行参数。我正在开发一个基于 Eclipse 4 RCP 的小型应用程序,但我认为,这个问题更常见。我无法找到,如何从命令行参数的插件的产品代码中获取,应用程序已被执行。

我需要使用自定义命令行参数将信息传递给我的代码。有人知道提示吗?

0 投票
2 回答
1087 浏览

eclipse - 如何将 e4 eclipse 部分添加到“显示视图”对话框中

我正在使用旨在在 Eclipse IDE 中运行的 e4 技术开发一个 Eclipse 插件。

如何将我的部件(在我的插件的 fragment.e4xmi 文件中定义为“PartDescriptor”)添加到“显示视图”对话框树(主菜单 > 窗口 > 显示视图 > 其他...)?

基于对org.eclipse.e4.ui.workbench.swt.internal.copy.ViewContentProvider#createChildren源代码的检查,并基于使用Live Application Model部分对其他部分的 PartDescriptors 的检查,我尝试在 Supplementary 上将以下标签添加到我的 PartDescriptor标签:

  • View
  • categoryTag:MyGroup

但是,它对我不起作用。我使用 Eclipse 4.3 和 e4 0.14。

0 投票
1 回答
619 浏览

eclipse - Eclipse 4 DI 的最佳实践

我想知道 Eclipse 4 依赖注入的最佳实践是什么。在互联网上阅读了这个主题后,我想出了以下策略。

要求

共享应用程序的数据模型(例如公司、员工、客户……),以便框架对象(视图部件、处理程序、侦听器……)可以以尽可能少的耦合访问它。

拟议战略

  • 我使用 lifeCycleURI 插件属性注册了一个在应用程序启动时触发的处理程序。这样的处理程序创建一个“空的”顶级数据模型容器对象并将其放入 EclipseContext。当应用程序停止时,它也会被丢弃。

  • 所有 Eclipse 框架类(视图部件、处理程序)都使用经典的 DI 来获取此类数据模型对象的注入。

  • 使用类构造函数创建的按钮侦听器不能将数据模型对象注入其中。所以我认为可以使用 ContextInjectionFactory.make() 创建它们以执行注入。这会将创建侦听器的类与 CIF 结合起来,但最大的优势是注入可以开箱即用。

这是我发现的利用 E4 DI 尽可能少耦合的最佳解决方案。在我看来,弱点是与 CIF 的耦合。我的问题是是否存在任何策略来消除这种耦合,或者针对相同要求的替代解决方案。