spring boot 的pom文件
在spring boot pom文件中主要的依赖maven坐标:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
而当点击spring-boot-starter-web时,进入spring-boot-starter-web-2.2.2.RELEASE.pom文件可以看到它还依赖于spring-boot-starters
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starters</artifactId>
<version>2.2.2.RELEASE</version>
</parent>
以此类推,依次如下:spring-boot-starter-web--->spring-boot-parent----->spring-boot-starters---->spring-boot-dependencies
在spring-boot-dependencies,真正用来管理应用版本的 pom文件(spring boot 的版本仲裁中心),
<name>Spring Boot Dependencies</name>
<description>Spring Boot Dependencies</description>
<url>https://projects.spring.io/spring-boot/#</url>
<licenses>
<license>
<name>Apache License, Version 2.0</name>
<url>https://www.apache.org/licenses/LICENSE-2.0</url>
</license>
</licenses>
<developers>
<developer>
<name>Pivotal</name>
<email>info@pivotal.io</email>
<organization>Pivotal Software, Inc.</organization>
<organizationUrl>https://www.spring.io</organizationUrl>
</developer>
</developers>
<scm>
<url>https://github.com/spring-projects/spring-boot</url>
</scm>
<properties>
<activemq.version>5.15.11</activemq.version>
<antlr2.version>2.7.7</antlr2.version>
<appengine-sdk.version>1.9.77</appengine-sdk.version>
<artemis.version>2.10.1</artemis.version>
<aspectj.version>1.9.5</aspectj.version>
<assertj.version>3.13.2</assertj.version>
<atomikos.version>4.0.6</atomikos.version>
....
我们可以看到 spring boot 已经为我们配置好了许多依赖的maven坐标,通过这些坐标约定,就可以快速的构建spring boot项目
spring-boot-starter 概述
在spring boot中,官方已经给哦我们提供了大量的starters(启动器)