问题出现的原因
现在很多人在使用Mybatis-plus,但有些业务需求使用mybatis更为方便,如果此时恰好又需要分页,就需要引入PageHelper
分页插件。这时启动项目就很容易遇到依赖冲突的问题,即:
java.lang.NoClassDefFoundError: org/mybatis/logging/LoggerFactory
这是因为mybatisplus已经引入了mybatis的依赖,而PageHelper也引入了mybatis的依赖,这也加入PageHelper后就会造成 版本冲突。
解决方法
引入下面的版本:
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.3.1</version>
<!--使用spring boot2整合 pagehelper-spring-boot-starter必须排除一下依赖
因为pagehelper-spring-boot-starter也已经在pom依赖了mybatis与mybatis-spring
所以会与mybatis-plus-boot-starter中的mybatis与mybatis-spring发生冲突
-->
<exclusions>
<exclusion>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
</exclusion>
<exclusion>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
注意:mybatisplus和PageHelper的jsqlparser包的版本要一致,否则会出现,pagehelper的分页可以正常使用,而mybatisplus的分页无法正常使用。
启动正常,测试mybatisplus自带分页显示正常,mybatis+分页插件也正常
总结:重要的是两者的jsqlparser包版本要一致!!!
请登录后查看回复内容