我已通过Java Web
创建了新项目 - > WebApplication
- > Enabled CDI
我的第一个问题是:为什么@Inject注释显示错误?即使bean.xml
已添加。
答案 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 })