最近项目开始使用分模块的方式开发,将公共代码提取出来,单独放到一个模块中。
其中全局异常捕获相关的代码也丢到了common中。 但是依赖common模块的spring boot应用启动后,全局异常捕获并没有生效。
解决方案:
首先看一下全局异常捕获类,左边是没有图标的
这说明这个类没有被spring boot扫描到。
先回到依赖common模块的入口处,添加scanBasePackages属性:
假如你的模块包名分别是:
- com.a.common
- com.a.m1
- com.a.m2
如果m1和m2需要用到common中的全局异常捕获,那么添加scanBasePackages=com.a就行了。
添加完了后再回来看,左边已经有图标了。