从Spring-Boot-Starters学习如何治理maven依赖冲突问题

做基础组件/中间件对接业务的同学,肯定对jar依赖冲突问题印象深刻。

Spring Boot Starters 实质上是Maven依赖和插件模块化管理 ,见spring-boot-starter-parentpom.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.providesspring-boot-starters 模块中,核心重点就下面几个:

  1. spring-boot-starter-parent
  2. spring-boot-dependencies
  3. spring-boot-starters
  4. spring-boot-starter
  5. spring-boot-starter-web
  6. spring-boot-starter-webflux

细读领会这几个就应该能体会到一些内在东西。


祝大家玩得开心!ˇˍˇ

简放,杭州

相关推荐
Sirius Wu1 小时前
Maven环境如何正确配置
java·maven
杨DaB4 小时前
【SpringBoot】Swagger 接口工具
java·spring boot·后端·restful·swagger
昵称为空C5 小时前
SpringBoot接口限流的常用方案
服务器·spring boot
hrrrrb6 小时前
【Java Web 快速入门】十一、Spring Boot 原理
java·前端·spring boot
创码小奇客8 小时前
架构师私藏:SpringBoot 集成 Hera,让日志查看从 “找罪证” 变 “查答案”
spring boot·spring cloud·trae
Olrookie9 小时前
XXL-JOB GLUE模式动态数据源实践:Spring AOP + MyBatis 解耦多库查询
java·数据库·spring boot
waynaqua9 小时前
SpringBoot:听说你还不知道时区设置
spring boot
又是努力搬砖的一年9 小时前
SpringBoot中,接口加解密
java·spring boot·后端
:-)9 小时前
idea配置maven国内镜像
java·ide·maven·intellij-idea
风象南10 小时前
SpringBoot 自研运行时 SQL 调用树,3 分钟定位慢 SQL!
spring boot·后端