maven 导入的版本跟实际的版本不符是什么问题?

图片说明

我想导入的是2.53.1,但是导入的确是3.14.0

<parent>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-parent</artifactId>
     <version>2.1.3.RELEASE</version>
     <relativePath/>
 </parent>

这个里面就包含了3.14.0这个版本,去掉这段代码就可以导入2.53.1.不去掉就是导入父类的这个3.14.0,怎么才能覆盖父类的这个版本呢?

https://www.cnblogs.com/shawWey/p/7417335.html

虽然没明白你说的什么,但你导入的那个2.53.1没错啊,下面的3.14.0是它所依赖的其他包。你如果在导入一个2.53.1的所依赖的包,有可能会产生包
冲突,如果你一定需要导入这个包,你可以在一个包中

<exclusions>
    <exclusion>
        <groupId> </groupId>
        <artifactId> <artifactId>
        <version>3.14.0</version>
    </exclusion>
</exclusions>

先把这个依赖包给排除去,再添加你要依赖的版本

第一个红圈就是你导入的包的版本,第二个红圈是这个包自己依赖的其他包,并没有冲突。
可以了解下 Maven 冲突解决原则,一般来说如果 pom.xml 定义了某个依赖包,而其他 jar 包中也依赖该包时,版本以 pom.xml 为主。