【发布时间】:2013-02-27 16:51:50
【问题描述】:
我有一个类,它注入了一个 MApplication。它是一个处理程序。我想手动触发处理程序的方法。
问题: 当我从另一个类手动实例化处理程序时 - MApplication 为空。我触发 Handler 的类已经注入了 MApplication,所以不是生命周期问题。
问题: 如何触发具有 @Inject 注释方法的类中的方法?
【问题讨论】:
标签: eclipse-rcp e4
我有一个类,它注入了一个 MApplication。它是一个处理程序。我想手动触发处理程序的方法。
问题: 当我从另一个类手动实例化处理程序时 - MApplication 为空。我触发 Handler 的类已经注入了 MApplication,所以不是生命周期问题。
问题: 如何触发具有 @Inject 注释方法的类中的方法?
【问题讨论】:
标签: eclipse-rcp e4
以下是成功的一天。
ManipulateModelhandler man = new ManipulateModelhandler();
//inject the context into an object
//IEclipseContext iEclipseContext was injected into this class
ContextInjectionFactory.inject(man,iEclipseContext);
man.execute();
【讨论】:
更短:
ContextInjectionFactory.make(ManipulateModelhandler.class, iEclipseContext).execute();
或者通过独立于其名称(框架执行的方式)执行带注释的方法:
ContextInjectionFactory.invoke(new ManipulateModelhandler(), Execute.class, iEclipseContext);
【讨论】: