我已经创建了一个简单的单元测试,但是IntelliJ错误地将它突出显示为红色。将其标记为错误

没有豆子?

如你所见,它通过了测试?所以它一定是自动连接的?


当前回答

最后一个重要的信息——添加ComponentScan,这样应用程序就知道它需要连接的东西。这与这个问题无关。但是,如果根本没有执行@autowiring,那么这可能是您的解决方案。

@Configuration
@ComponentScan(basePackages = {
    "some_package",
})
public class someService {

其他回答

我也遇到过这个问题,并通过删除Spring Facet来解决它:

File ->项目结构 选择方面 拆卸弹簧

好运!

我删除了这段代码。不再有错误


另一种检查方法: 将@Service注释添加到Repository类中,它应该可以工作。

这是另一种“不能自动装配”。No Beans of…”可以通过安装插件来解决,在我的案例中是Spring Batch中的JobBuilderFactory。

有时——就我而言——原因是一个错误的输入。我不小心导入了

import org.jvnet.hk2.annotations.Service

而不是

import org.springframework.stereotype.Service

盲目地接受Idea建议的导入中的第一个选择。第一次发生的时候我花了几分钟:-)

我在spring引导应用程序中解决这个问题的方法是打开spring应用程序上下文,并手动为缺失的自动连接bean添加类!

(通过项目结构菜单或弹簧工具窗口访问…编辑“Spring Application Context”)

因此,SpringApplicationContext不仅仅包含我的ExampleApplication spring配置,它还包含了缺失的Bean:

SpringApplicationContext:

ExampleApplication.java MissingBeanClass.java

et voilà:错误信息消失!