- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试将 E3.X 应用程序移植到 E4 并遵循 tutorial拉斯沃格尔。我创建了一个扩展 DIViewPart 类的 View 包装器, View 本身在构造函数上使用依赖注入(inject)并在我的 plugin.xml 中引用了 View 包装器。
但是,在启动应用程序时会抛出异常:
org.eclipse.e4.core.di.InjectionException: Could not find satisfiable constructor in my.application.views.MyView
即使经过几个小时的谷歌搜索,我也不知道出了什么问题。也许我只是在寻找错误的东西,但我现在一无所知。如果有人能指出我所缺少的东西,我会很高兴。
为了确保我在下面附加了受影响的 View 源代码:
public class MyViewWrapper extends DIViewPart { public MyViewWrapper() { super(MyView.class); }}
public class MyView { public static final String ID = MyView.class.getCanonicalName(); private Label label; @Inject public MyView(Composite parent) { this.label = new Label(parent, SWT.NONE); this.label.setText("My view"); }}
感谢任何帮助,并提前致谢。
编辑:Stefan 指出,这个问题可能与 e4 在构造函数调用期间不知道正确的组合这一事实有关,下面的代码应该可以解决这个问题:
public class MyView { public static final String ID = MyView.class.getCanonicalName(); private Label label; public MyView() { } @PostConstruct public void createPartControl(Composite parent) { this.label = new Label(parent, SWT.NONE); this.label.setText("Sensor view"); }}
遗憾的是,事实并非如此。异常已更改,但原因可能仍然相同:
org.eclipse.e4.core.di.InjectionException: Unable to find matching method to invoke
我的假设是依赖注入(inject)作为一个整体没有正常工作,但我不知道为什么,因为我已经完全按照我找到的教程完成了所有操作。我需要添加 .e4xmi 还是什么?
最佳答案
我遇到了和你一样的情况,通过调试代码找到了解决办法。
查看堆栈跟踪,更具体地说是 org.eclipse.e4.core.internal.di.InjectorImpl
类,大约在第 213 行。 invoke
方法接收一个限定符参数,该参数是错误消息中提到的匹配方法的目标。这个量词是依赖注入(inject)正在寻找的。
例如,在我的例子中,量词 参数是一个 @Focus
注解。所以通过添加 @Focus
在 MyView 类中的适当方法上注释,我能够摆脱你描述的第二个问题,因为 DI 找到了正确的匹配方法来调用。
我知道这是对几个月前提出的问题的较晚回答,但我认为这可以帮助其他人在不花费太多时间的情况下进行调试。
关于java - org.eclipse.e4.core.di.InjectionException : Could not find satisfiable constructor 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17897398/
我写了一个我认为是 quite interesting question 的答案,但不幸的是,在我发布之前,该问题已被作者删除。我在这里重新发布问题的摘要和我的答案,以防其他人有用。 假设我有一个 S
有没有办法写约束: C t1 t2 :: Constraint 如果 t2 与 t1 匹配,它“满足”(这是正确的词)。 例如: C (forall a. Num a => a -> a -> a)
我正在尝试用这段代码求解方程: a = [-0.0008333 -0.025 -0.6667 -20]; length_OnePart = 7.3248; xi = -6.4446; yi = -16
我知道我可以关闭 MySQL 中的安全模式,所以我不会尝试解决这个问题。 我有一个简单的表格: create table rubbish( id int auto_increment prim
尝试刷新我的 sencha extjs 应用程序并总是收到此错误: 命令: sencha 应用程序刷新 sencha 应用升级 总是同样的错误: [ERR] Cannot satisfy requir
我正在尝试为我的项目创建一个测试套件,HaskSplit在我的 .cabal 配置中: -- Initial HaskSplit.cabal generated by cabal init. For
我有 pc/sc 读卡器和非接触式卡(mifare 卡),我可以连接到该卡,并且我也成功执行 getdate 命令,但是当我想进行身份验证时,我看到此错误“6982:安全状态不满足”我已经尝试了这 3
简而言之,流程如下: inputChannel->transformer->firstOutboundAdapter->pollingOutboundAdapter 概要:inputChannel 接
这个问题在这里已经有了答案: Why do try!() and ? not compile when used in a function that doesn't return Option o
我正在尝试切片矢量并在 Rust 中同时打印它。这是我的代码: fn main() { let a = vec![1, 2, 3, 4]; println!("{:?}", a[1..
我正在尝试自定义约束 菜单栏类: import UIKit class ManuBar: UIView { override init(frame: CGRect) { sup
我遇到了这个问题,我有一个聊天服务器需要与托管在 aws 中的 lambda 服务进行通信,但云前端会引发以下错误。 BODY: ERROR: The request could not be s
我有一个包含Arc>的结构,我试图添加一个获取self所有权的方法,并将所有权移到新线程中并启动它。但是,我得到了错误 error[E0277]: the trait bound `std::sync
我遇到了一个编译错误,似乎突出显示了我对类型系统不了解的内容。 我想将字符串转换为整数,如果字符串不是有效整数,则带有自定义 panic 消息。我做一个match在 Result由 parse() 返
这是应用过滤器后复制数据的代码。 Sub read_excel_file(path_to_current_work_book As String, path_to_destination_work
我们有一个 shell 脚本,可以自动准备虚拟环境,然后在其中运行测试。部分脚本安装要求: pip install -r requirements.txt 当脚本多次运行时,它会针对每个要求打印一条警
总是遇到 FoodTracker 教程;遵循此步骤:“实现自定义控件” https://developer.apple.com/library/content/referencelibrary/Get
我收到此错误: Unable to simultaneously satisfy constraints. Probably at least one of the constraints in th
我有一个 UITableViewCell我正在创建,并且我正在使用带有完全在代码中构建的约束的自动布局。 虽然应用程序中的实际输出很好(即,它看起来就像我设计的那样),但我收到了著名的“无法同时满足约
这个问题在这里已经有了答案: Disable autolayout constraint error messages in debug console output in Xcode (5 个回答)
我是一名优秀的程序员,十分优秀!