从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

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


祝大家玩得开心!ˇˍˇ

简放,杭州

相关推荐
wand codemonkey15 分钟前
(二十七)Maven(依赖)【安装】+【项目结构】
java·开发语言·maven
linda公馆17 分钟前
Maven项目报错:java:错误:不支持发行版本 5
java·开发语言·maven
河阿里2 小时前
SpringBoot:项目启动速度深度优化
java·spring boot·后端
阿丰资源2 小时前
基于SpringBoot的企业客户管理系统(附源码)
java·spring boot·后端
两年半的个人练习生^_^2 小时前
SpringBoot 项目使用 Jasypt 实现配置文件敏感信息加密
java·spring boot·后端
YOU OU5 小时前
SpringBoot
java·spring boot·spring
凯瑟琳.奥古斯特5 小时前
SpringBoot快速入门指南
java·开发语言·spring boot·后端·spring
代码漫谈5 小时前
基于 Spring Boot 3.2.x 的 Actuator 监控指南:从健康检查到企业级监控体系
java·spring boot·actuator 监控
Nicander6 小时前
Spring Boot 全局异常处理:原理与实践
spring boot·后端
庞轩px6 小时前
第八篇:Spring与微服务——从SpringBoot到SpringCloud的演进
spring boot·spring·微服务·nacos·gateway·sentinel