IDEA报错Could not autowire. No beans of 'XXXXX' type found
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IDEA报错Could not autowire. No beans of 'XXXXX' type found相关的知识,希望对你有一定的参考价值。
参考技术A在IDEA中使用Spring的注解@Autowired,程序能正常运行,但是idea标红报错 Could not autowire. No beans of \'UserMapper\' type found 。
程序能正常运行 ,说明没有错误,bean真实存在。
网上有另一个解决办法,在Application类添加 @EnableAutoConfiguration 注解, @Autowired 确实不报错了,但是提示 @EnableAutoConfiguration 注解重复,因为 @SpringBootApplication 中包含 @EnableAutoConfiguration 。
有多个微服务A、B、C、D...等等,都要用到redis,使用相同的配置文件,但是连接不同的redis服务,因此把RedisTemplate的Bean放到common模块,供其他所有模块使用,在每个模块中定义自己的LettuceConnectionFactory。如下所示:
导入LettuceConnectionFactory时使用@Resource就不会报错。
IDEA可以理解Spring的上下文,也就是能识别Spring的注解 @Autowired ,但是 @Mapper 和 @MapperScan 注解是是Mybatis的,IDEA理解不了。
IDEA拿到了Spring的注解@Autowired,就要去找@Autowired使用的bean;但是理解不了MyBatis的注解也是用来生成bean的,就找不到Mapper生成的Bean。
common模块中确实不存在LettuceConnectionFactory的Bean,所以IDEA找不到。
为什么换成@Resource就可以了呢?因为@Resource也不是Spring的注解,IDEA理解不了这是要找bean,就不会去找了。
idea报错could not autowired .但是可以正常运行
转 http://www.cnblogs.com/softidea/p/5763285.html
解决办法:
File-->Project Setting-->Facets-->Spring右键删掉
因为创建项目的时候,都是先创建空项目再创建web moduele(你想直接创建web project也可以),一般不会使用spring组件。都是自己配置的。
这时候你要是不小心手滑(手滑原因:因为idea对你spring的配置文件会在上方报警告,然后你一fix,就容易出事),那就会报错无法Autowired。
所以你只要删掉你手滑添加的就可以
以上是关于IDEA报错Could not autowire. No beans of 'XXXXX' type found的主要内容,如果未能解决你的问题,请参考以下文章
分享知识-快乐自己:intellij Idea报错Could not autowire. No beans of...
IntelliJ idea 报错:Could not autowire,no beans of "XXX" type found
解决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
spring boot+mybatis注解使用方式(无xml配置)设置自动驼峰明明转换(),IDEA中xxDao报错could not autowire的解决方法