springboot依賴沖突問(wèn)題及解決過(guò)程
項(xiàng)目場(chǎng)景:
新搭了一個(gè)springboot 2.3.7.RELASE的框架,在集成mysql,tkMapper,mybatis的過(guò)程中,啟動(dòng)報(bào)錯(cuò)。
問(wèn)題描述:
提示各種依賴的錯(cuò)誤 通過(guò)idea的功能解決沖突依賴,嘗試了多次,也不行 還嘗試過(guò)刪除可能意外引入的jar:
原因分析:
在之前搭的一個(gè)分布式項(xiàng)目里面有這些基礎(chǔ)的配置,依賴按照版本拿過(guò)來(lái)一個(gè)個(gè)添加,嘗試,依然不行。 在舊的項(xiàng)目可以,在這里就不行。 把springboot版本改成和舊項(xiàng)目一樣,也不可以。
解決方案:
最后,把代碼全部刪掉(因?yàn)槭切马?xiàng)目,所以原本也沒(méi)幾個(gè)文件),只留下了一個(gè)啟動(dòng)類。然后maven依賴只留下了springboot的test 和 web,嘗試啟動(dòng),是可以的。 接著,慢慢加mysql-collection 依賴,druid依賴。到這里的時(shí)候報(bào)錯(cuò)了。 查看控制臺(tái),發(fā)現(xiàn)報(bào)錯(cuò)的是一個(gè)1.5.7的springboot。想著把它通過(guò)exclusions去掉,然后接著clear, install 打包,又報(bào)錯(cuò)了。又是一個(gè)新的錯(cuò)誤。 這時(shí)候想起來(lái)在最開(kāi)始處理依賴的時(shí)候,就是各種exclusions去除jar包,就是因?yàn)榘姹镜膯?wèn)題。 想著添加parent試試。 在pom.xml里面添加parent,通過(guò)parent控制springboot依賴。
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.3.7.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent>
然后把前面去除的exclusions配置去掉,發(fā)現(xiàn)這時(shí)候啟動(dòng)報(bào)的錯(cuò)誤正常了!
這里說(shuō)的正常,是指配置什么,報(bào)的是它相關(guān)的錯(cuò)誤,而不是一些稀奇古怪都沒(méi)見(jiàn)過(guò)的錯(cuò)誤。
查看了下mysql的配置文件沒(méi)問(wèn)題,然后根據(jù)這個(gè)錯(cuò)誤百度下:
Unsatisfied dependency expressed through field 'basicProperties
在項(xiàng)目里面復(fù)制進(jìn)來(lái),沒(méi)有輸入版本號(hào),發(fā)現(xiàn)直接自動(dòng)引入了當(dāng)前springboot對(duì)應(yīng)的版本。
然后重啟,成功了。
總結(jié)
看了下之前寫(xiě)的項(xiàng)目,發(fā)現(xiàn)也是有加parent的,可能是時(shí)間長(zhǎng)了,忘記了,這次做個(gè)筆記記錄一下。
這次為啥不加呢,因?yàn)榇罱ǖ膍aven工程是有module的,父子工程。
了解了maven的dependencyManagement
后,就想通過(guò)它來(lái)管理jar包依賴,所以就沒(méi)加parent了。
到此這篇關(guān)于springboot依賴沖突解決過(guò)程的文章就介紹到這了,更多相關(guān)springboot依賴沖突內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
成功解決IDEA2020 Plugins 連不上、打不開(kāi)的方法
這篇文章主要介紹了成功解決IDEA2020 Plugins 連不上、打不開(kāi)的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06idea mybatis配置log4j打印sql語(yǔ)句的示例
本篇文章主要介紹了idea mybatis配置log4j打印sql語(yǔ)句的示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-01-01springboot swagger不顯示接口的問(wèn)題及解決
這篇文章主要介紹了springboot swagger不顯示接口的問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-06-06java中BigDecimal進(jìn)行加減乘除的基本用法
大家應(yīng)該對(duì)于不需要任何準(zhǔn)確計(jì)算精度的數(shù)字可以直接使用float或double運(yùn)算,但是如果需要精確計(jì)算的結(jié)果,則必須使用BigDecimal類,而且使用BigDecimal類也可以進(jìn)行大數(shù)的操作。下面這篇文章就給大家介紹介紹關(guān)于java中BigDecimal進(jìn)行加減乘除的基本用法。2016-12-12Java超詳細(xì)講解設(shè)計(jì)模式之一的單例模式
單例模式(Singleton Pattern)是 Java 中最簡(jiǎn)單的設(shè)計(jì)模式之一。這種類型的設(shè)計(jì)模式屬于創(chuàng)建型模式,它提供了一種創(chuàng)建對(duì)象的最佳方式2022-03-03java中Scanner.next()和Scanner.nextLine的區(qū)別圖文詳解
使用java語(yǔ)言編程,最常用的輸入就是使用Scanner了,它的構(gòu)造很簡(jiǎn)單,這篇文章主要給大家介紹了關(guān)于java中Scanner.next()和Scanner.nextLine區(qū)別的相關(guān)資料,需要的朋友可以參考下2024-02-02