Slf4j实现冲突
问题:先大概说一下项目框架,SpringBoot + Slf4j + Log4j2。大家都清楚Slf4j是门面模式,并没有真的实现日志,真正实现的是Log4j2(当然也可以是其他的)。
我遇到的问题有两个,一个是日志实现冲突,这个很好解决移除掉其中一个依赖即可
这里看到有两个日志实现:slf4j-log4j12和log4j-slf4j-impl,这导致了slf4j不知道使用哪一个实现。
解决也很简单,我们只需要移除其中一个日志实现即可。
日志配置文件不生效
问题:解决了冲突之后,我就添加了配置文件log4j2-spring.xml(注意我这里和上文不一样,更改了日志实现,使用的是log4j2),但是不知道为什么,不仅没有生成日志文件,连控制台也没有打印日志。一开始我以为是我文件位置不对,后来又以为是文件名称不对。
解决:到最后看打包的classes中没有log4j2-spring.xml。一看pom文件才知道,是没有打包进去。。。