springboot引入jar依赖的版本和在springmvc中不一样

今天发现一个奇怪的现象,在springmvc中引入以下依赖,查看项目结构会引入他的子依赖如图:

<dependency>
            <groupId>org.elasticsearch.client</groupId>
            <artifactId>elasticsearch-rest-high-level-client</artifactId>
            <version>6.0.1</version>
        </dependency>

子依赖都是6.0.1的

也就是说在springmvc中包正常。

但是如果放到springboot项目中发现子依赖的版本变成了6.4.3,不知道为什么会被转变

上面两个子依赖变成了6.4.3 虽然最后手动排除了这俩个依赖重新依赖了6.0.1的版本,但还是很好奇为什么。就去了springboot项目的父工程spring-boot-starter-parent去看了下,没有收获,在进入他的父类工程spring-boot-dependencies,终于发现在spring-boot-dependencies中会指定某些包的默认版本,如果你没有指定的话他就启用了。

哎,有点小坑!手动指定版本把,就可以解决了。

经验分享 程序员 微信小程序 职场和发展