springboot2.x+log4j2(springboot2.x整合log4j2日志日志 包冲突问题解决)
在学习springboot整合mybatis和log4j2日志途中遇到以下问题,在网上也搜索好多最终解决;本次主要记录整合log4j2日解决一次报错的记录。
一、引入log4j2日志jar包
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-log4j2</artifactId> </dependency>
二、启动项目时报错内容:
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/D:/Program%20Files/apache-maven-3.3.9/repository/ch/qos/logback/logback-classic/1.2.3/logback-classic-1.2.3.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/D:/Program%20Files/apache-maven-3.3.9/repository/org/apache/logging/log4j/log4j-slf4j-impl/2.12.1/log4j-slf4j-impl-2.12.1.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [ch.qos.logback.classic.util.ContextSelectorStaticBinder]
Logging system failed to initialize using configuration from 'classpath:common/log4j2.xml'
java.lang.IllegalStateException: Logback configuration error detected:
ERROR in ch.qos.logback.core.joran.spi.Interpreter@6:17 - no applicable action for [Properties], current ElementPath is [[configuration][Properties]]
ERROR in ch.qos.logback.core.joran.spi.Interpreter@7:34 - no applicable action for [Property], current ElementPath is [[configuration][Properties][Property]]
ERROR in ch.qos.logback.core.joran.spi.Interpreter@8:38 - no applicable action for [Property], current ElementPath is [[configuration][Properties][Property]]er
三、解决办法:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-logging</artifactId> </exclusion> </exclusions> </dependency>
从spring-boot-starter-web包中排除内嵌日志包,然后看下
刷新maven jar看这两个包是否消失,如果没有消失说明还有其他包没有排除,由于我整合mybatis,所以发现
<dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.0.1</version> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-logging</artifactId> </exclusion> </exclusions> </dependency>
这个jar包里也需要排除,最后发现消失;然后运行成功。如果大伙遇到类似问题可以一个这样排查解决!
参考以下解决办法:https://www.cnblogs.com/Anxc/p/12604521.html
- Spring or SpringBoot项目整合spark日志冲突解决
- spring boot log4j2与三方依赖库log4j冲突无法初始化问题解决方法
- springboot2.x整合spring-data-jpa的问题
- spring boot 整合log4j2 日志框架
- Springboot2.x新版整合SpringDataJpa中Hibernate默认创建的mysql表为myisam引擎修改为InnoDB问题
- springBoot整合swaggers+vue,解决跨域问题
- Maven项目中,关于Spring Boot 整合MyBatis时,Service层无法找到mapper接口的问题解决
- Spring Boot 整合 log4j2 实现日志管理
- Springboot整合token的权限管理实现(三)—— 解决token或cookie过期后的跨域问题
- 关于spring boot整合druid连接池在程序关闭后连接不释放问题解决
- 解决SpringBoot整合shiro之后无法加载静态资源文件问题
- SpringBoot 整合Mail发送功能问题与解决
- Spring Boot 2.X优雅的解决跨域问题
- springboot整合mongodb时debug模式下日志一直刷新问题
- Spring Boot (日志篇):Log4j2整合ELK,搭建实时日志平台
- Spring boot和Dubbot整合的小项目遇到的问题和解决方法
- springboot整合Log4j2(将日志输出到指定文件)
- spring boot--整合spring session实现session共享以及cookie丢失问题解决
- 总结一下springboot项目整合log4j2框架过程中遇到的问题
- 解决SpringBoot整合Mybatis扫描不到Mapper的问题