做基础组件/中间件对接业务的同学,肯定对jar依赖冲突问题
印象深刻。
Spring Boot Starters 实质上是Maven依赖和插件模块化管理 ,见spring-boot-starter-parent
的 pom.xml 描述,其初衷是解决jar依赖冲突问题。
Spring Boot Starters 文档 罗列了所有starter,包括starter名称、描述以及POM。
Spring Boot 项目主页中,快速入门(Quick Start)示例的Maven配置就是一个很好的开端:
xml
<!-- Inherit defaults from Spring Boot -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.7.16</version>
</parent>
<dependencies>
<!-- Add typical dependencies for a web application -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
所有POM和META-INF/spring.provides
在 spring-boot-starters 模块中,核心重点就下面几个:
- spring-boot-starter-parent
- spring-boot-dependencies
- spring-boot-starters
- spring-boot-starter
- spring-boot-starter-web
- spring-boot-starter-webflux
细读领会这几个就应该能体会到一些内在东西。
祝大家玩得开心!ˇˍˇ
简放,杭州