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

没有豆子?

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


当前回答

你需要做的就是添加

AppConfiguration.java中的@ComponentScan("package/include/your/annotation/component")

因为我认为你的AppConfiguraion.java的包比你的注释组件(@Service, @Component…)的包更深,

比如“package/include/your/annotation/component/deep /config”。

其他回答

我在申请的时候也遇到过类似的问题。 当我添加注释时,不正确的高亮显示消失了。

@ContextConfiguration(classes = {...})

检查bean的包是否正确编写

//Check if this is written right 
package com.package1.package2.package3


import ...

@Service
class ServiceX {

  ...

}

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

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

简单,你只需要做2步

添加休眠内核依赖项 将@Autowired改为@Resource。

==>> change @Autowired to  @Resource

对我来说,解决方案是把@EnableAutoConfiguration放在Application类的@SpringBootApplication下面,因为它是多余的,所以它要下划线。删除它,瞧,所有关于丢失豆子的警告都消失了!傻春……