日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

Maven依赖版本号不生效

發布時間:2023/12/15 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Maven依赖版本号不生效 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

????????最近受log4j2的漏洞的影響,全網碼農開始升級log4j2。我這里的服務也需要升級,但是我遇到了一個問題:修改依賴之后發現版本號沒有變化。

一、依賴現狀

項目A依賴了一個common包,common包里面依賴log4j2

<dependencyManagement><dependencies><dependency><!-- Import dependency management from Spring Boot --><groupId>org.springframework.boot</groupId><artifactId>spring-boot-dependencies</artifactId><version>${spring.boot.dependencies.version}</version><type>pom</type><scope>import</scope></dependency></dependencies> </dependencyManagement><dependencies><dependency><groupId>com.exmaple.foundation</groupId><artifactId>common</artifactId><version>${common.version}</version></dependency>... </dependencies>

common包依賴修改:

<dependencies><dependency><groupId>com.example.mq</groupId><artifactId>producer-sdk</artifactId><version>2.0.5-SNAPSHOT</version><!-- 排除舊版本log4j2 --><exclusions><exclusion><groupId>org.apache.logging.log4j</groupId><artifactId>log4j-slf4j-impl</artifactId></exclusion><exclusion><groupId>org.apache.logging.log4j</groupId><artifactId>log4j-core</artifactId></exclusion><exclusion><groupId>org.apache.logging.log4j</groupId><artifactId>log4j-api</artifactId></exclusion></exclusions></dependency><!-- 引入新版本log4j2 --><dependency><groupId>org.apache.logging.log4j</groupId><artifactId>log4j-api</artifactId><version>2.15.0</version></dependency><dependency><groupId>org.apache.logging.log4j</groupId><artifactId>log4j-core</artifactId><version>2.15.0</version></dependency>... </dependencies>

?本以為這樣是可以生效的,但實際并沒有生效。后來查閱maven依賴關系,發現有以下原因:

1)dependencyManagement優先級要高于dependencies中的

2)spring-boot-dependencies依賴log4j2,版本是2.10.0

3)spring-boot-dependencies放到了dependencyManagement,所以最終使用的版本是2.10.0

這是根因,既然知道了根因,那就好解決了,通過spring官網獲得最終解決方案

二、官方修改建議

通過查看spring官方修改意見,如下圖示:

Log4J2 Vulnerability and Spring Boot

按照springboot官方提出的修改意見,最終生效。?

?三、總結

????????maven依賴很少出現問題,但是真出問題了還是挺難弄的。這個問題困惑了一天,才最終解決。特地寫一篇博客記錄下:dependencyManagement的優先級要高于dependencies

總結

以上是生活随笔為你收集整理的Maven依赖版本号不生效的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。