我试图在我的Eclipse项目中使用依赖项注入。我在依赖管理pom中包含了对org.eclipse.e4.core.di的maven依赖。
<dependency>
<groupId>org.eclipse.e4</groupId>
<artifactId>org.eclipse.e4.core.di</artifactId>
<version>1.5.0-SDK-4.5.0</version>
</dependency>
而且,在我使用依赖注入和编译范围的插件中。
<dependency>
<groupId>org.eclipse.e4</groupId>
<artifactId>org.eclipse.e4.core.di</artifactId>
<version>compile</version>
</dependency>
此后,当我尝试使用批注@Inject时,我看到错误并且也看不到任何导入建议。
我也尝试将以下内容包含在pom中
<dependency>
<groupId>javax.annotation</groupId>
<artifactId>javax.annotation-api</artifactId>
<version>1.2</version>
</dependency>
是什么导致此问题?我正在使用Java 8。
要使用,@Inject
您必须javax.inject
在插件的Require-Bundle
或Import-Package
项中包含MANIFEST.MF
。
要在MANIFEST.MF编辑器中执行此操作,请转至Dependencies选项卡,并将javax.inject添加到Required Plug-ins或Imported Packages部分。
完成此操作后,您应该可以使用
import javax.inject.Inject;
在您的代码中。
注意:除非ContextInjectionFactory
用于创建类,否则仅注入从e4 Application.e4xmi中的条目创建的类。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句