从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

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


祝大家玩得开心!ˇˍˇ

简放,杭州

相关推荐
FenceRain11 分钟前
spring boot 拦截器增加语言信息
java·spring boot·后端
星月前端11 分钟前
idea没法识别springboot项目的一个原因解决及办法
java·spring boot·intellij-idea
weixin_436525071 小时前
Spring Boot 集成 EasyExcel 的最佳实践:优雅实现 Excel 导入导出
java·spring boot·后端
ChinaRainbowSea1 小时前
9. LangChain4j + 整合 Spring Boot
java·人工智能·spring boot·后端·spring·langchain·ai编程
武昌库里写JAVA1 小时前
Mac下Python3安装
java·vue.js·spring boot·sql·学习
Light601 小时前
领码方案|Linux 下 PLT → PDF 转换服务超级完整版:异步、权限、进度(一气呵成)
linux·spring boot·pdf·gpcl6/ghostpcl·s3/oss·权限与审计·异步与进度
召摇3 小时前
Spring Boot 内置工具类深度指南
java·spring boot
Moshow郑锴4 小时前
SpringBootCodeGenerator使用JSqlParser解析DDL CREATE SQL 语句
spring boot·后端·sql
小沈同学呀11 小时前
创建一个Spring Boot Starter风格的Basic认证SDK
java·spring boot·后端
凤山老林13 小时前
SpringBoot 轻量级一站式日志可视化与JVM监控
jvm·spring boot·后端