Injection of resource dependencies failed; nested exception is org.springframework.beans.factory

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/mingyundezuoan/article/details/81916559

异常信息

Caused by: org.springframework.beans.factory.BeanCreationException:
Error creating bean with name ‘userService’: Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type


异常场景

  • 项目架构为多服务拆分,每个服务对应一个数据库,服务之间通过DUBBO接口相互调用
  • B服务新增接口供A服务调用,B升级版本,A修改B的服务版本并调用B的方法进行逻辑处理,编译期无任何影响
  • 启动项目开始报错,异常信息如上
  • 通常看到这个异常马上去检查接口或DAO层的类标签@Service @Component 等标签,或依赖注入是否正确,但报错的位置是A引用B服务的接口找不到
  • 又重启了B服务,检查是否服务有问题,B中引用是否有问题,但仔细想想,B中有问题应该是运行时才会报错,而不是A启动的时候报错

异常解决

  • 突然想到A找不到B提供的接口依赖,可能是A中引用B服务的DUBBO配置文件中没有暴露本次需要提供的接口
  • 修改配置文件,新增本次B服务提供的接口,服务启动正常

举一反三

  • Dubbo 接口,两个项目间互相调用,首先检查调用方是否配置了该接口
  • 出现注入异常,首先检查接口的实现类是否有相应的标签注入
  • 检查报错的类,是否有引用其他接口但没有添加@Autowired @Resource 等标签

猜你喜欢

转载自blog.csdn.net/mingyundezuoan/article/details/81916559
今日推荐