0
@ConversationScoped
public class BackingBean

{

    @Inject Conversation conversation;



    public BackingBean() {}



     ...

}

为什么 Intellij 给我一个警告:“不满足的依赖关系:没有 bean 匹配注入点。”

CTRL+F1 详细消息是“检测具有模糊依赖关系的注入点”。

它编译和部署并且似乎在 JBoss 上运行良好,例如我能够进行 conversation.begin()、conversation.end() 等。

4

2 回答 2

2

我去了项目结构-> 模块。我选择了我的网络模块。我注意到了 CDI 方面。我单击该构面并注意到两个单选按钮都没有被选中:Apache Open Web Beans 或 JBoss Weld。我选择了 JBoss Weld。然后,出现了一条错误消息:

“缺少以下库:weld-api.jar、weld-core.jar、weld-logger.jar、weld-se.jar、weld-servlet-int.jar、weld-spi.jar、weld-tomcat-support .jar,焊接检票口.jar"

我点击了“修复”按钮。打开一个对话框,“设置库”。我有一个选择:“使用库”或“下载”。

我选择下载。

Intellij 下载了八个 jar 文件并将它们安装在我的 $PROJECT_HOME/lib 目录中。

现在,当我注入 Conversation 时,我没有收到任何警告。

于 2012-08-16T17:10:59.843 回答
1

如果它在服务器上运行,那你很好——看起来你要么在 Idea 中发现了一个错误,要么以某种方式错误配置了项目的 CDI 特性(Conversation当然在你的类路径中,但可能没有被 Idea 扫描)......

我怀疑后者:)

于 2012-08-15T12:57:51.917 回答