无法在 eclipse 4 中使用 @Inject

Not able to use @Inject in eclipse 4

我正在尝试在我的 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,您必须在插件 MANIFEST.MFRequire-BundleImport-Package 条目中包含 javax.inject

要在 MANIFEST.MF 编辑器中执行此操作,请转到“依赖项”选项卡并将 javax.inject 添加到“必需的插件或导入的包”部分。

完成此操作后,您应该可以使用

import javax.inject.Inject;

在您的代码中。

注意:除非您使用 ContextInjectionFactory 创建 class.

,否则只会注入从 e4 Application.e4xmi 中的条目创建的 classes