為什么在SpringBoot+maven的項目中,所引入的依賴包可以不指定依賴的版本號?


當在Springboot項目中引入了spring-boot-starter-parent,則可以不用引入依賴包版本號,比如:

<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.1.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>

因為它會默認提供常用依賴包的版本號,也有助於統一版本號。如果非要想自己填寫版本號也是可以的,這樣會覆蓋官方版本號(如果是新手,個人建議還是不要隨便修改依賴包版本號,免得版本號不兼容)。
接下來,我們看下spring-boot-starter-parent的繼承關系就能明白,為什么使用它之后就可以不填依賴包版本號。首先看下它的pom文件:
打開前:

 

打開后:

 

打開之后會發現spring-boot-starter-parent還有一個父依賴:spring-boot-dependencies。然后打開這個pom文件之后,會發現這個里面已經有很多常用的帶有版本號的依賴包,如:

 

但是springboot提供官方統一的版本管理之外,還讓開發人員自行管理依賴包版本。如果想要自行管理版本,則建議使用dependency management來代替,然后設置jdk,編碼格式,各種依賴包等版本號就可以。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM