mybatisplus sl4j冲突
时间: 2025-01-30 07:07:01 浏览: 45
### 解决 MyBatisPlus 与 SLF4J 的依赖冲突
当项目中存在多个日志框架绑定时,可能会遇到 `SLF4J` 警告提示类路径中有多个 `SLF4J` 绑定的情况。对于 MyBatisPlus 和 SLF4J 之间可能存在的依赖冲突,主要原因是不同模块引入了不同的日志实现库。
#### 排查冲突原因
如果项目中同时包含了诸如 `log4j-slf4j-impl` 和其他日志实现(比如 `slf4j-log4j12`),那么就会造成冲突[^2]。这种情况下,`SLF4J` 不知道应该使用哪个具体的日志实现来进行实际的日志记录操作。
#### 修改 Maven 配置排除不必要的依赖
为了消除此类警告并确保只有一种日志实现被加载到应用程序中,可以在项目的 `pom.xml` 文件里调整依赖关系:
```xml
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>${mybatis.plus.version}</version>
<!-- 排除 mybatis plus 中自带的日志实现 -->
<exclusions>
<exclusion>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j-impl</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- 明确指定要使用的 slf4j 实现 -->
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>${logback.version}</version>
</dependency>
```
上述 XML 片段展示了如何通过 `<exclusions>` 来移除不需要的日志实现,并显式声明希望使用的具体版本的日志实现工具,如 Logback 或者其他的日志门面实现[^3]。
#### 日志配置文件设置
除了修正 POM 文件外,还需要确认应用中的日志配置文件是否正确指向所选的日志实现方式。如果是采用 Logback,则应当有一个名为 `logback.xml` 或类似的配置文件存在于资源目录下;而若是选择了 Log4j,则需相应地准备 `log4j.properties` 或 `log4j2.xml` 等配置文件。
阅读全文
相关推荐


















