[英]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.