从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

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


祝大家玩得开心!ˇˍˇ

简放,杭州

相关推荐
阿拉斯攀登5 分钟前
Maven VS Gradle
gradle·maven
缘来是庄6 分钟前
invalid comparison
java·spring boot·mybatis
白宇横流学长38 分钟前
基于SpringBoot医院复查开药网站和微信小程序的设计
spring boot·后端·微信小程序
小二·1 小时前
MyBatis基础入门《十》Spring Boot 整合 MyBatis:从单数据源到多数据源实战
spring boot·后端·mybatis
编程修仙1 小时前
第九篇 异常统一处理
spring boot
学到头秃的suhian1 小时前
Springboot进阶知识
java·spring boot·spring
白宇横流学长1 小时前
基于SpringBoot实现的电子发票管理系统
java·spring boot·后端
白宇横流学长1 小时前
基于SpringBoot实现的智慧就业管理系统
java·spring boot·后端
YDS8292 小时前
SpringCloud —— 黑马商城的项目拆分和Nacos
spring boot·后端·spring cloud
中文很快乐2 小时前
从零到一:用 SpringBoot 打造 RESTful API 实战指南
java·spring boot·后端·restful