Maven高階,依賴傳遞和解決衝突,版本鎖定,提取統一版本號
阿新 • • 發佈:2020-09-15
顯示紅色實線的代表衝突。紅色虛線,告訴你同一個jar都在哪裡被多次引用了。
根據三方庫匯入順序,自動優化jar包
自動優化原則有兩條
第一宣告者優先: 跟匯入依賴的順序有關,先匯入的優先順序更高
第二路徑近者優先,路徑指的是依賴關係圖中的位置
三、排除依賴
此時有重複依賴,(重複不一定衝突,版本不同會衝突)
我們想排除jdbc包下的core依賴使用程式碼
<!--spring的jdbc包--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>5.1.12.RELEASE</version> <exclusions> <exclusion> <artifactId>spring-core</artifactId> <groupId>org.springframework</groupId> </exclusion> </exclusions> </dependency>
四、鎖定版本
如果多個庫,交叉匯入了同一個庫,意思就是多個相同依賴的版本不同,此時我們可以通過dependencyManagement鎖定庫的版本。
<dependencyManagement> <dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>5.2.5.RELEASE</version> </dependency> </dependencies> </dependencyManagement> <dependencies> <!--spring的jdbc包 此時匯入被鎖定的包,不需要寫版本號,若寫了就以就近原則下載 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> </dependency> </dependencies>
五、提取版本號
選中版本,ctrl+alt+v,提取版本號,自動放入properties中