maven專案Pom中依賴的version

2021-08-16 07:07:18 字數 977 閱讀 3782

共有四種解決方式:

1、第一宣告優先原則:

在pom.xml配置檔案中,如果有兩個名稱相同版本不同的依賴宣告,那麼先寫的會生效。

所以,先宣告自己要用的版本的jar包即可。

2、路徑近者優先:

直接依賴優先於傳遞依賴,如果傳遞依賴的jar包版本衝突了,那麼可以自己宣告乙個指定版本的依賴jar,即可解決衝突。

3、排出原則:

傳遞依賴衝突時,可以在不需要的jar的傳遞依賴中宣告排除,從而解決衝突。

例子:

org.apache.strutsgroupid>

struts2-spring-pluginartifactid>

2.3.24version>

org.springframeworkgroupid>

spring-beansartifactid>

exclusion>

exclusions>

dependency>

4、版本鎖定原則(最常使用)

在配置檔案pom.xml中先宣告要使用哪個版本的相應jar包,宣告後其他版本的jar包一律不依賴。解決了依賴衝突。

例子:

4.2.4.releasespring.version>

5.0.7.finalhibernate.version>

2.3.24struts.version>

properties>

org.springframeworkgroupid>

spring-contextartifactid>

$version>

dependency>

dependencies>

dependencymanagement

maven的pom 依賴(座標)匯入異常

例如需要匯入依賴 cn.e3mallgroupid e3 manager pojoartifactid 0.0.1 snapshotversion dependency dependencies 當需要匯入 依賴 座標 的時候,出現異常 cn.e3mallgroupid ee3 manager po...

maven依賴的問題

junit和jackson的依賴問題 junit的依賴錯誤 問題 錯誤 程式包org.junit不存在 檢查報錯的檔案,發現用到了 importorg.junit.before importorg.junit.test 於是搜尋發現,before,after只支援4.x.x的版本,而原工程中的pom...

Maven的依賴範圍

scope的值 依賴範圍 編譯有效 執行時有效 測試有效 compile 是 是 是 test 否 否 是 provided 是 否 是 runtime 否 是 是 system 是 否 是 compile 預設依賴範圍,執行時會被打包。test 他在測試階段使用,執行時不需要所以不會被打包。pro...