Pagehelper中jsqlparser和Mybatis-puls中jsqlparser冲突
时间: 2023-05-24 14:06:31 浏览: 1629
可能原因:
两个库都使用了jsqlparser作为SQL解析器,引用了不同的版本,导致冲突。
解决方法:
1. 排除Mybatis-plus中的jsqlparser依赖,在pom.xml中添加如下配置:
```xml
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>${mybatis-plus.version}</version>
<exclusions>
<exclusion>
<groupId>com.foundationdb</groupId>
<artifactId>sql-parser</artifactId>
</exclusion>
</exclusions>
</dependency>
```
2. 升级Pagehelper的版本,在pom.xml中将Pagehelper的版本升级到较新的版本,较新的版本可能已经使用了与Mybatis-plus相同的jsqlparser版本,解决了冲突问题。
3. 将Mybatis-plus与Pagehelper的顺序调换,如果Pagehelper在前面被加载了,那么Mybatis-plus中的jsqlparser会被覆盖掉,导致冲突。可以将顺序调换一下,看看问题是否能够解决。
```xml
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>${mybatis-plus.version}</version>
</dependency>
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>${pagehelper.version}</version>
</dependency>
```
4. 手动解决冲突,将Pagehelper中的jsqlparser库替换成Mybatis-plus中的jsqlparser库,或者将Mybatis-plus中的jsqlparser库替换成Pagehelper中的jsqlparser库,但需要注意版本兼容性。
阅读全文