关于SpringBoot启动过程中报NoSuchBeanDefinitionException的异常的问题

场景:原本app模块中的类移动到新建的biz模块中,发现无法注入,报:NoSuchBeanDefinitionException的异常

原因:Spring Boot会自动扫描@SpringBootApplication所在类的同级包,以及下级包里的所有BEAN,所以建议入口类放在最外层的包名下,而新建biz模块的时候,创建的包路径和app模块中主程序的包路径不一致。

总结:图中的路径是springboot的扫描包的基础路径,所有的类无论在哪个模块下,都应该以此包路径为基础进行创建;另外,可以添加注解@ComponentScan(basePackages = "XXX.XXX")应该可以解决路径不一致的问题,但是不建议这么做。

PS: 其他可能导致这个异常的情况有:忘记给类添加注解、类的方法属性为private等。

猜你喜欢

转载自blog.csdn.net/fan7654li/article/details/81392470
今日推荐