Spring Boot多模块项目中,解决全局异常捕获不生效的问题

最近项目开始使用分模块的方式开发,将公共代码提取出来,单独放到一个模块中。
Spring Boot多模块项目中,解决全局异常捕获不生效的问题_第1张图片
其中全局异常捕获相关的代码也丢到了common中。 但是依赖common模块的spring boot应用启动后,全局异常捕获并没有生效。

解决方案:

首先看一下全局异常捕获类,左边是没有图标的
Spring Boot多模块项目中,解决全局异常捕获不生效的问题_第2张图片
这说明这个类没有被spring boot扫描到。
先回到依赖common模块的入口处,添加scanBasePackages属性:
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200708104553669.pn
假如你的模块包名分别是:
- com.a.common
- com.a.m1
- com.a.m2
如果m1和m2需要用到common中的全局异常捕获,那么添加scanBasePackages=com.a就行了。

添加完了后再回来看,左边已经有图标了。
在这里插入图片描述

你可能感兴趣的:(java,springboot)