@Inject Annotation不适用错误显示?

时间:2017-11-01 07:28:54

标签: jsf-2 cdi jsf-2.2 inject

我已通过Java Web创建了新项目 - > WebApplication - > Enabled CDI

我的第一个问题是:为什么@Inject注释显示错误?即使bean.xml已添加。

Inject Exception

2 个答案:

答案 0 :(得分:0)

injects documentation中所述,它适用于构造函数,方法和字段。不是上课。

问题2,请参阅此other question

答案 1 :(得分:0)

@Inject不适用于课程。例如,这是在inject documentation / javadoc中定义的。

但最重要的是,您可以在IDE中打开Inject类,并查看以下行:

@Target({ METHOD, CONSTRUCTOR, FIELD })

所有Java注释上都有这样的行,它决定了你可以在哪里放置这样的注释。在这种情况下,它位于方法,构造函数和字段上。

如果要在类级别上使用注释,那么@Target也会有TYPE。因此它看起来像这样:

@Target({ METHOD, CONSTRUCTOR, FIELD, TYPE })