這篇文章主要講解了“Maven項目中jar沖突如何解決”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“Maven項目中jar沖突如何解決”吧!
成都創(chuàng)新互聯(lián)是專業(yè)的武城網(wǎng)站建設(shè)公司,武城接單;提供成都做網(wǎng)站、成都網(wǎng)站制作,網(wǎng)頁設(shè)計,網(wǎng)站設(shè)計,建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進行武城網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!
針對這個問題,我們首先要搞清楚的是maven的幾大原則 一、依賴傳遞假設(shè)A項目依賴B,B又依賴C,那么A也會依賴C
graph LR A(A項目) --依賴--> B(B項目) B --依賴-->C(C項目) A --依賴-->C
二、聲明優(yōu)先原則假設(shè)maven項目中先后聲明了同一個jar包的A版本和B版本,則maven會使用A版本
graph LR A(聲明A版本) --> B(聲明B版本) O((maven))--使用-->A O--不使用-->B
三、最近路徑優(yōu)先原則假設(shè)項目直接依賴A,A依賴B,B依賴C1,項目又直接依賴D,D依賴C2,那么項目會使用C2
graph LR O((項目))--直接依賴-->A(A) A-->B(B) B-->C1(C1) O--直接依賴-->D(D) D-->C2(C2) O--使用-->C2
當(dāng)項目中同時引入不同版本的jar時就是出現(xiàn)依賴仲裁的問題,解決依賴仲裁的問題,我們就要充分利用好maven依賴的三大原則
使用
commons-httpclient commons-httpclient 3.1 commons-logging commons-logging
這種方式可以通過IDEA的插件輕松實現(xiàn)暫未實現(xiàn)
利用
com.alibaba.boot dubbo-spring-boot-starter 0.2.0
利用最近路徑優(yōu)先原則,當(dāng)其他依賴的jar間接依賴的jar版本不是我們想要的時候,我們可以在項目中直接引入我們想要版本的jar包
感謝各位的閱讀,以上就是“Maven項目中jar沖突如何解決”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對Maven項目中jar沖突如何解決這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!