SpringBoot引入MP 报错ClassNotFoundException

问题再现

还是之前自己的项目,我改了一下架构,然后在引入新的组件时就爆出了ClassNotFoundException 的异常。

1
java.lang.ClassNotFoundException: org.mybatis.logging.LoggerFactory

解决过程

因为这个项目是之前就已经写好的架构,所以再出现这个问题时,我就想到了可能是依赖冲突的问题而导致的,在经过了MP 的Github 的issue 查询、StackOverFlow 之后,我找到了问题的答案那就是

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<exclusions>
<exclusion>
<artifactId>jsqlparser</artifactId>
<groupId>com.github.jsqlparser</groupId>
</exclusion>
</exclusions>
<version>3.3.2</version>
</dependency>

<!-- https://mvnrepository.com/artifact/org.mybatis.spring.boot/mybatis-spring-boot-autoconfigure -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-autoconfigure</artifactId>
<version>2.1.3</version>
</dependency>

<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<exclusions>
<exclusion>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
</exclusion>
</exclusions>
<version>1.2.10</version>
</dependency>

主要的冲突有两个,因为之前使用过分页,所以分页有一个依赖的冲突、然后就是MP 包里自带的sql 解析的组件有冲突,至此,这个问题就已经很清楚了。


个人备注

此博客内容均为作者学习所做笔记,侵删!
若转作其他用途,请注明来源!