问题描述
对外提供web服务项目,引入基础common jar ,在日志中打印日志无效
举例
父项目 zhuo ,子项目A (common ,对异常拦截统一处理,jar包形式) ,
子项目B (web项目,提供接口),B 出现异常被A捕捉,但A用lombok 的@slf4j 注解 打印日志无效。
解决
在A项目 common 中 引入jar 即可
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-jcl</artifactId>
<version>1.7.7</version>
</dependency>
原因
项目中用的是commons-logging的日志框架,而jar中用的是slf4j的日志框架,
slf4j和commons-logging是两个不同的日志框架,这样项目打印日志会冲突,
只能打印commons-logging的日志,不能打印slf4j的日志(如果引用的jar包没有日志框架,单个项目是可以两个日志框架共存的)