解决IDEA报错Could not autowire. There is more than one bean of 'xxx' type

其实这本身不是一个问题,也不影响整个项目的运行

解决IDEA报错Could not autowire. There is more than one bean of 'xxx' type

我们查看报错信息发现它的意思大致为xxx类型有不止一个bean,但是这个错误不会影响项目运行,相当于一个warning。

导致这个错误的原因通常是注入的类型有其他的实现类,所以IDEA提示注入的时候会冲突。比如我的项目出现这个错误的原因是项目中新增了一个定制的插件,这个插件里重写了这个类。
因此出现这个问题的时候可以有两种办法解决。 解决方式有两种: 1.给不同的实现标注名字
使用Qulifier注解标注
@Autowired
@Qualifier(name = 'userDao1')
private UserDao userDao;

2.使用@Primary

@Component
@Primary
public class TestService{}

其实完全可以不用处理,我也建议不去处理,仅仅是知道它为什么有waring就足矣了。

上一篇:如何在Javascript和Sass之间共享变量


下一篇:JAVA11-JVM调优的十个JVM核心知识点,总有你需要的一点