在这,您将学习了解 Spring Boot Starter Parent, 它是 Spring Boot 提供的父级 Pom 文件,旨在提供自动版本依赖管理,帮助我们轻松快速地进行Spring Boot开发。

什么是 Spring Boot Starter Parent ?

通过 Spring Boot Starter Parent, 我们可以进行简单便捷地包依赖管理。在 Spring Boot 每一个发行版中,均提供了该版本所兼容的依赖项版本清单

所以,在开发 Spring Boot 应用时,pom.xml文件中,我们可以不用指定具体的依赖版本号,因为 Spring Boot Starter Parent 默认会使用自身支持包版本号。

Spring Boot Starter Parent 开始

通过Spring Initializr或者使用Idea 创建一个 Spring Boot 项目时,我们可以看到pom.xml文件中包含以下内容:

     org.springframework.boot     spring-boot-starter-parent     2.1.2.RELEASE 

一旦pom.xml文件中包含了上述配置,Spring Boot 应用将默认包含如下功能:

  • 1.依赖管理功能(Spring Boot 自动管理包版本依赖)

  • 2.相关默认值设置

    • 2.1默认的 Java 版本号
    • 2.2资源文件编码格式
    • 2.3资源过滤等
  • 3.插件管理

1.1 了解 Starter Parent 内部

追踪到spring-boot-starter-parent内部文件,可以看到存在一个spring-boot-dependencies的父级pom

文件中定义了应用所有的依赖管理清单,还包括插件和其他相关配置,上面是pom.xml大致的样子:

     UTF-8     1.8     @     ${java.version}     UTF-8     ${java.version} 

属性部分定义了一些应用程序参数的默认值。如果我们没有自定义,则默认使用这些值。

                       org.jetbrains.kotlin         kotlin-maven-plugin        ${kotlin.version}                              compile             compile                                      compile                                                         ${java.version}             true                             

1.2 Starter Parent 是如何定义版本号的?

我们继续深入pom.xml文件配置:

windows 平台按住ctrl, 点击2.1.2.RELEASE, 可以看到如下配置内容:

     5.15.7     2.7.7    1.9.67     2.6.3     1.9.2     3.11.1     4.0.6    2.1.4    3.0.0     1.9.3     2.6.2     3.6.0                             org.springframework.boot            spring-boot             2.1.2.RELEASE                               org.springframework.boot             spring-boot-actuator             2.1.2.RELEASE                  

自定义某个依赖的版本号

Spring Boot Starter Parent 为我们为我们处理了版本依赖的问题,所以强烈建议您在项目的pom.xml文件继承它,如下所示:

                                        org.springframework.boot             spring-boot-dependencies             2.1.2.RELEASE             pom             import              

scope定义为了import, 配置完成后,我们就可以自定义某个依赖的版本了:

                           org.springframework.boot             spring-boot-starter-data-jpa                         2.1.1.RELEASE              

之后,我们可以自定义某个依赖的版本号,以jpa为例,我们重写了默认的版本号,重新定义为我们想要的2.1.1.RELEASE版本。

最后

最后,欢迎大家留言,咱们一起讨论技术问题,也可以关注我,回复B01b01,免费领取java面试题!

本文来自博客园,作者:深码青年,转载请注明原文链接:https://www.cnblogs.com/shenMaQN/p/17742609.html