您的位置:首页 > 编程语言 > Java开发

关于SpringBoot bean无法注入的问题(与文件包位置有关)改变自动扫描的包

2017-05-17 00:00 176 查看
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'userServiceImpl': Unsatisfied dependency expressed through field 'baseMapper'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'userMapper' defined in file [D:\IDEA\hyper-cloud\hyper-cloud-demo\build\classes\main\com\hyper\mapper\UserMapper.class]: Unsatisfied dependency

无法注入Dao中的Bean!
解决分析后来经研究发现,SpringBoot项目的Bean装配默认规则是根据Application类所在的包位置从上往下扫描! “Application类”是指SpringBoot项目入口类。这个类的位置很关键:
如果Application类所在的包为:io.github.gefangshuai.app
,则只会扫描io.github.gefangshuai.app
包及其所有子包,如果service或dao所在包不在io.github.gefangshuai.app
及其子包下,则不会被扫描!

解决:@ComponentScan注解进行指定要扫描的包以及要扫描的类。

参考:http://blog.csdn.net/u014695188/article/details/52263903
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Spring Boot
相关文章推荐