为什么springboot依赖不写版本号?

xml 复制代码
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>

有时候我们看到SpringBoot项目的依赖不写版本号,为什么这样呢?这样可以吗?为什么不报错?

也就是说为什么在有的spring项目中的maven配置中,写依赖<dependencies>时,有的不用写版本号<version>

为什么在有的spring项目中的maven配置中,写依赖时,有的不用写版本号

一、第一种情况:

java 复制代码
<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
</dependencies>

如同以上

一般出现这种情况,是因为。

  1. 继承了spring-boot的配置,这里引入spring-boot-starter-parent的好处是在添加启动器时不用申明版本号!
java 复制代码
<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.3.3.RELEASE</version>
</parent>

因为添加了标签

spring-boot-starter-parenth会为我们提供常用jar包版本,其实不是不用指定,是人家为我们指定好了。

自己指定版本号也可以,会覆盖官方版本,这时可以用maven helper查看一下有没有冲突即可。

相关推荐
稻草猫.5 分钟前
Spring事务操作全解析
java·数据库·后端·spring
希望永不加班1 小时前
SpringBoot 整合 MongoDB
java·spring boot·后端·mongodb·spring
Lzh编程小栈1 小时前
数据结构与算法之队列深度解析:循环队列+C 语言硬核实现 + 面试考点全梳理
c语言·开发语言·汇编·数据结构·后端·算法·面试
妙蛙种子3111 小时前
【Java设计模式 | 创建者模式】工厂方法模式
java·后端·设计模式·工厂方法模式
freejackman4 小时前
Java从0到1---基础篇
java·开发语言·后端·idea
无心水4 小时前
20、Spring陷阱:Feign AOP切面为何失效?配置优先级如何“劫持”你的设置?
java·开发语言·后端·python·spring·java.time·java时间处理
0xDevNull4 小时前
Java 21 新特性概览与实战教程
java·开发语言·后端
Gse0a362g4 小时前
Go - Zerolog使用入门
开发语言·后端·golang
Renhao-Wan4 小时前
Docker 核心原理详解:镜像、容器、Namespace、Cgroups 与 UnionFS
java·后端·docker·容器
EFCY1MJ905 小时前
ASP.NET MVC 1.0 (五) ViewEngine 深入解析与应用实例
后端·asp.net·mvc