解決Mybatis-plus和pagehelper依賴沖突的方法示例
簡(jiǎn)介
MyBatis-Plus(簡(jiǎn)稱 MP)是一個(gè) MyBatis 的增強(qiáng)工具,在 MyBatis 的基礎(chǔ)上只做增強(qiáng)不做改變,為簡(jiǎn)化開發(fā)、提高效率而生。
啟動(dòng)即會(huì)自動(dòng)注入基本 CURD,性能基本無損耗,直接面向?qū)ο蟛僮?/p>
Mybati-plus本身自帶分頁功能,但是我個(gè)人一直是使用pagehelper進(jìn)行分頁,所以在pom中添加了pagehelper依賴,但是運(yùn)行項(xiàng)目后發(fā)現(xiàn)jar包沖突,面對(duì)沖突我們應(yīng)該怎么解決它呢,看完如下內(nèi)容便可輕松解決
先看依賴
<!-- mbatis-plus -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.1.2</version>
</dependency>
<!--generator-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<version>3.1.2</version>
</dependency>
<!-- pagehelper-->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.2.5</version>
</dependency>
運(yùn)行項(xiàng)目
***************************
APPLICATION FAILED TO START
***************************
Description:
An attempt was made to call a method that does not exist. The attempt was made from the following location:
com.baomidou.mybatisplus.core.MybatisMapperAnnotationBuilder.getLanguageDriver(MybatisMapperAnnotationBuilder.java:369)
The following method did not exist:
com.baomidou.mybatisplus.core.MybatisConfiguration.getLanguageDriver(Ljava/lang/Class;)Lorg/apache/ibatis/scripting/LanguageDriver;
The method's class, com.baomidou.mybatisplus.core.MybatisConfiguration, is available from the following locations:
jar:file:/Applications/MrWang/Maven/privite_wang_repository/com/baomidou/mybatis-plus-core/3.1.2/mybatis-plus-core-3.1.2.jar!/com/baomidou/mybatisplus/core/MybatisConfiguration.class
It was loaded from the following location:
file:/Applications/MrWang/Maven/privite_wang_repository/com/baomidou/mybatis-plus-core/3.1.2/mybatis-plus-core-3.1.2.jar
Action:
Correct the classpath of your application so that it contains a single, compatible version of com.baomidou.mybatisplus.core.MybatisConfiguration
Disconnected from the target VM, address: '127.0.0.1:55790', transport: 'socket'
Process finished with exit code 0
糾正應(yīng)用程序的類路徑,使其包含com.baomidou.mybatisplus.core.MybatisConfiguration的單一兼容版本

標(biāo)紅的部分是灰色的,看后面括號(hào)中的意思 (為沖突而生 ),這個(gè)包跟上面的包是一樣的,上面是亮的,下面是灰色的,說明系統(tǒng)用了上面的jar包,導(dǎo)致下面jar包提示沖突,但為什么不用下面的,自己私下花點(diǎn)時(shí)間 研究一下,當(dāng)然我們的目的不是解決這個(gè)沖突,因?yàn)檫@個(gè)被系統(tǒng)檢測(cè)出來了,系統(tǒng)自動(dòng)停用了一個(gè),我們要解決系統(tǒng)檢測(cè)不出來的沖突
引入 MyBatis-Plus 之后請(qǐng)不要再次引入 MyBatis 以及 MyBatis-Spring,以避免因版本差異導(dǎo)致的問題。(Mybatis-plus官網(wǎng)原話)
pagehelper依賴包中由上圖得知,也是包含了MyBatis 以及 MyBatis-Spring,而MyBatis-Spring依賴沖突,系統(tǒng)自動(dòng)用了Mybatis-plus中的MyBatis-Spring,所以我們只需要把pagehelper中的mybatis依賴刪除即可,具體操作如下
在version 下面添加 exclusions依賴(排除)
<!-- pagehelper-->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.2.5</version>
<exclusions>
<exclusion>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
</exclusion>
</exclusions>
</dependency>
重啟項(xiàng)目并測(cè)試
postman測(cè)試結(jié)果

問題完美解決了
到此這篇關(guān)于解決Mybatis-plus和pagehelper依賴沖突的方法示例的文章就介紹到這了,更多相關(guān)Mybatis-plus和pagehelper依賴沖突內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
java中synchronized(同步代碼塊和同步方法)詳解及區(qū)別
這篇文章主要介紹了 java中synchronized(同步代碼塊和同步方法)詳解及區(qū)別的相關(guān)資料,需要的朋友可以參考下2017-02-02
SpringBoot使用Interceptor攔截器的實(shí)例
這篇文章主要介紹了SpringBoot使用Interceptor攔截器的相關(guān)知識(shí),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-03-03
本文給大家分享的是一則使用java編寫的文件管理器的代碼,新人練手的作品,邏輯上還是有點(diǎn)小問題,大家?guī)兔纯窗伞?/div> 2015-04-04
Java實(shí)現(xiàn)視頻時(shí)間維度剪切的工具類
這篇文章主要為大家詳細(xì)介紹了將視頻按照時(shí)間維度進(jìn)行剪切的Java工具類,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起了解一下2022-12-12
JDK動(dòng)態(tài)代理的深入理解與實(shí)際應(yīng)用
這篇文章主要介紹了JDK動(dòng)態(tài)代理的深入理解與實(shí)際應(yīng)用,在Java的世界里,JDK的動(dòng)態(tài)代理是一項(xiàng)非常強(qiáng)大且實(shí)用的技術(shù),它為我們?cè)谶\(yùn)行時(shí)動(dòng)態(tài)地創(chuàng)建代理類提供了可能,從而實(shí)現(xiàn)對(duì)目標(biāo)對(duì)象方法調(diào)用的靈活攔截和增強(qiáng),需要的朋友可以參考下2025-02-02最新評(píng)論

