最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

maven解決依賴沖突的三種解決方法

 更新時間:2024年03月20日 14:35:15   作者:moutory  
依賴沖突是指項目依賴的某一個jar包,有多個不同的版本,因而造成了包版本沖突,本文主要介紹了maven解決依賴沖突的三種解決方法,具有一定的參考價值,感興趣的可以了解一下

前言

隨著maven項目不斷推進,開發(fā)人員難免會遇到這樣一個問題,在添加新的依賴jar包后,會發(fā)現和原有的項目依賴產生沖突(多數情況是由于依賴傳遞引起的),這個時候就需要我們根據實際情況來選擇生效的最終依賴。

比如下圖:

下面將以上面的例子來對如何解決依賴沖突進行講解

方法一:使用maven提供的傳遞依賴原則

(一)第一聲明者優(yōu)先原則

其實所謂第一聲明者,就是在pom文件中,優(yōu)先使用書寫順序排在前面的依賴包,也就是誰先聲明,就先用誰的依賴。
如果我們想在我們的項目中使用5.0.2版本的spring-bean包的話,只需要調整一下依賴的順序即可。

(二)路徑者優(yōu)先原則

路徑者優(yōu)先原則也很好理解,如果有兩個依賴版本沖突了,那么就顯式地在pom文件中把要使用的依賴添加上去。

這種方法雖然簡單直接,但是只適合于項目依賴的jar包比較少的場景,一旦管理的依賴數量達到一定數量,簡單的調整依賴的順序并不能解決實際沖突問題。
在實際開發(fā)中很少應用到。

方法二:排除依賴(有時候會用到)

排除依賴的思路也很簡單,如果有兩個依賴的版本發(fā)生了沖突,那么只要把其中一個依賴給排除掉,只剩下一個依賴,那么自然就可以解決沖突的問題。
我們只需要使用exclusion關鍵字對相關依賴進行排除就行

方法三:版本鎖定(最常用,推薦使用)

對于版本沖突的問題,我們最常使用的解決方式,是使用dependencyManagement統一對依賴的版本進行定義。這樣的話,導入依賴的時候就會直接使用我們鎖定的依賴版本。

這里要注意兩點,版本鎖定和使用路徑優(yōu)先原則不同,使用路徑優(yōu)先原則,是實實在在地將jar包給引入到pom文件中,而版本鎖定只是規(guī)定了要使用的版本號,只有真實用到了相關的依賴,才生效。同時,版本鎖定可以更集中地約束和規(guī)定依賴版本,這種優(yōu)勢是其他方法所不能達到的。

當然了,如果只是簡單的小型項目,使用其他方式可能是更好的解決方法。

到此這篇關于maven解決依賴沖突的三種解決方法的文章就介紹到這了,更多相關maven依賴沖突解決內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Java枚舉類使用場景及實例解析

    Java枚舉類使用場景及實例解析

    這篇文章主要介紹了Java枚舉類使用場景及實例解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-04-04
  • java泛型的局限探究及知識點總結

    java泛型的局限探究及知識點總結

    在本篇內容里小編給大家分享的是一篇關于java泛型的局限探究及知識點總結內容,有需要的朋友們可以跟著學習參考下。
    2021-07-07
  • mybatis查詢返回Map<String,Object>類型的講解

    mybatis查詢返回Map<String,Object>類型的講解

    這篇文章主要介紹了mybatis查詢返回Map<String,Object>類型的講解,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • Spring Boot+Mybatis的整合過程

    Spring Boot+Mybatis的整合過程

    這篇文章主要介紹了Spring Boot+Mybatis的整合過程,需要的朋友可以參考下
    2017-07-07
  • Spring中的注解@Value("#{}")與@Value("${}")的區(qū)別介紹

    Spring中的注解@Value("#{}")與@Value("${}")的區(qū)別

    這篇文章主要介紹了Spring中的注解@Value(“#{}“)與@Value(“${}“)的區(qū)別到底是什么,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-06-06
  • springboot 自定義404、500錯誤提示頁面的實現

    springboot 自定義404、500錯誤提示頁面的實現

    springboot 默認已經提供了一套處理異常的機制。在 springboot 中提供了一個名為 BasicErrorController 的類來處理 /error 請求,然后跳轉到默認顯示異常的頁面來展示異常信息,本文就詳細的介紹一下,感興趣的可以了解一下
    2021-11-11
  • Java實現ODT轉PDF的常用方案詳解

    Java實現ODT轉PDF的常用方案詳解

    在?Java?開發(fā)中,文檔格式轉換是一個常見的技術需求,ODT?是基于?XML?的開放文檔格式標準,下面我們就來看看如何使用Java實現ODT轉PDF吧
    2026-04-04
  • Java selenium上傳文件的實現

    Java selenium上傳文件的實現

    本文主要介紹了Java selenium上傳文件的實現,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-04-04
  • HDFS?Balancer負載均衡器及語法詳解

    HDFS?Balancer負載均衡器及語法詳解

    這篇文章主要為大家介紹了HDFS?Balancer負載均衡器及語法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-03-03
  • java階乘計算獲得結果末尾0的個數代碼實現

    java階乘計算獲得結果末尾0的個數代碼實現

    今天偶然看到一個要求,求1000~10000之間的數n的階乘并計算所得的數n!末尾有多少個0?要求: 不計算 只要得到末尾有多少個0就可以了,看下面的代碼吧
    2013-12-12

最新評論

新蔡县| 全州县| 卢氏县| 汕尾市| 新源县| 含山县| 荆门市| 冕宁县| 山阳县| 长白| 屯留县| 潜山县| 南充市| 淮滨县| 永顺县| 吉首市| 莱州市| 清苑县| 洛隆县| 富平县| 罗田县| 鄯善县| 延津县| 沙湾县| 福海县| 龙胜| 同德县| 卫辉市| 进贤县| 博湖县| 高淳县| 广宁县| 礼泉县| 大余县| 九江市| 龙门县| 随州市| 连州市| 鹰潭市| 阿拉尔市| 天水市|