报错No bean named ' is defined的原因和解决方案

项目为dubbo+springmvc+spring+mybatis

贴上项目目录 如下:


baidu-dubbo为父项目;

其他的都是子项目;

其中core项目 和  ifc 项目为jar包  core项目是项目自己的一些接口     ifc是暴露出来的公共接口

service项目和web项目是war包;   service是业务处理层  web是主要是负责页面跳转逻辑的

core项目中引入了ifc项目  service中也引入了ifc项目   web中引入了core和ifc项目

这篇文章主要讲一个操作性的错误:

项目是公司的项目从git上拉取下来的   配置都没问题 

别的同事是正常启动的

可是我启动就报错  : No bean named ' is defined;

按照以下逻辑排查了错误:

1 类名是否写错  , 项目找不到这个类

2 类名没错  , 但是对应的bean没有加上注解

3 配置文件里面扫描的包名路径是否正确 , 路径不正确扫描不到bean 肯定加载不到

4 dubbo的配置一定要放在spring扫描加载所有bean之后  , 这样dubbo调用服务才能找到对应的服务

几步排查基本可以找到错误  :

可是以上问题我的并没有出现

于是  我想起来了一个可能忽视的原因:

因为是父子项目  运行的时候我需要把jar包的项目install到本地仓库中  否则是找不到对应的引用的

于是我对两个jar包项目右键====>Run As====>maven clean =====>maven install

但是此时第二个jar包项目 install一直失败 ,

百度发现原因: 对子项目maven clean maven install之前必须对父项目  clean install

于是我按照顺序  依次clean install -->父项目 --->ifc项目(因为是core引用了ifc,所以要先install项目ifc)--->core项目  成功运行 不再报错 


  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值