簡體   English   中英

如何在Spring Boot中升級Spring版本

[英]How do I upgrade the Spring version in Spring Boot

是否有關於如何將Spring版本升級到Spring 5.0的教程? 我在pom.xml中找不到Spring版本。

我發現了這個: https//github.com/spring-projects/spring-framework/wiki/Upgrading-to-Spring-Framework-5.x#upgrading-to-version-50

但它沒有說明實際更改版本號的位置。

我正在使用Spring Boot 1.3。 如果我升級到Spring Boot 2.0,會自動將我的Spring版本升級到5嗎?

謝謝!

Spring Boot項目(使用Spring Boot依賴項的項目)必須不顯式設置各個Spring依賴項。 這些依賴項由您聲明的Spring Boot核心工件提取。 這通常是通過spring-boot-starter-parent ,您聲明為項目的父pom。
這是Spring Boot的一大優勢,可以幫助您識別和聲明可以完美協作的依賴項。
因此,為了將您的項目更新到Spring 5(實際發布的版本),您必須將spring-boot-starter-parent父聲明從1.3更新到2.X(或者如果你更新spring-boot-dependencies的依賴版本)不要使用入門父母)。
您確實可以在Spring Boot 2的發行說明中讀到:

Spring Boot 2.0構建於Spring Framework 5之上並需要它。

請注意,從Spring Boot 1.3(舊版本)到Spring Boot 2(最新版本)的更新可能會導致您的應用程序出現一些回歸。
因此,您應該仔細測試您的應用程序,以確定所有這些。
Spring-Boot-2.0-Migration-Guide也是一個很好的資源,可以簡化遷移。


要檢查Spring Boot提取的Spring依賴項的版本,您可以依賴dependency:tree目標。
以下是通過聲明org.springframework.boot:spring-boot-starter:jar:2.0.2.RELEASE作為項目的父級獲得的代碼片段:

$ mvn dependency:tree                                                                       
[INFO] Scanning for projects...                                                             
[INFO]                                                                                      
[INFO] ----------------------------------------------------             
[INFO] Building demo 0.0.1-SNAPSHOT                                                         
[INFO] --------------------------------[ jar ]---------------------------------             
[INFO]                                                                                      
[INFO] --- maven-dependency-plugin:3.0.2:tree (default-cli) @ demo ---                      
[INFO] com.example:demo:jar:0.0.1-SNAPSHOT                                                  
[INFO] +- org.springframework.boot:spring-boot-starter:jar:2.0.2.RELEASE:compile            
[INFO] |  +- org.springframework.boot:spring-boot:jar:2.0.2.RELEASE:compile                 
[INFO] |  |  \- org.springframework:spring-context:jar:5.0.6.RELEASE:compile                
[INFO] |  |     +- org.springframework:spring-aop:jar:5.0.6.RELEASE:compile                 
[INFO] |  |     +- org.springframework:spring-beans:jar:5.0.6.RELEASE:compile               
[INFO] |  |     \- org.springframework:spring-expression:jar:5.0.6.RELEASE:compile          
[INFO] |  +- org.springframework.boot:spring-boot-autoconfigure:jar:2.0.2.RELEASE:compile   
[INFO] |  +- org.springframework.boot:spring-boot-starter-logging:jar:2.0.2.RELEASE:compile`
...

您可以通過https://start.spring.io/生成示例項目來進行“干運行”測試

你可以通過檢查它的pom.xml找到Spring spring-boot-starter-X的Spring Framwork版本。 導航到其父pom,直到找到spring-boot-dependencies-VERSION.pom 使用InteliiJ,在pom文件中,我可以通過單擊文件中的引用輕松導航到父pom。 我想(或希望)你可以在其他IDE中做同樣的事情。 尋找屬性<spring.version> ,那就是Spring Framwork版本。

例如,我使用的是spring-boot-starter-web-1.3.8.RELEASE.jar 它的父pom是spring-boot-dependencies-1.3.8.RELEASE ,它包含屬性<spring.version> ,值為4.2.8.RELEASE

您可以通過覆蓋包含spring-boot-starter-X依賴關系的pom中的此屬性來更改Spring Framwork版本,但不建議這樣做 另請注意,在以后的版本中,屬性名稱已更改spring-framework.version

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM