Maven 下载的依赖版本和引入的依赖版本不一致问题解决
问题描述:
下载的依赖版本和引入的依赖版本不一致。
问题分析:
1、由于当前项目先引入了spring-data-elasticsearch 4.1.8版本的依赖同时elasticsearch依赖版本为7.9.3,然后spring-data-elasticsearch依赖的版本改为了3.1.1.RELEASE,elasticsearch版本应该会变成6.2.2的,但是elasticsearch依赖版本还是7.9.3。
解决办法:
(1)重新建一个项目引入spring-data-elasticsearch 3.1.1.RELEASE版本的依赖即可。
<!-- ElasticSearch6缓存数据库-->
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-elasticsearch</artifactId>
<version>3.1.1.RELEASE</version>
<scope>compile</scope>
</dependency>
(2)在pom.xml的properties加入一个对应${xxx}的xxxx.version标签来设置版本。
<properties>
<elasticsearch.version>6.2.2</elasticsearch.version>
</properties>
(3)添加dependencyManagement标签,在dependencyManagement标签里面添加Maven依赖,这样就可以指定对应依赖的版本了。
<!--只是对版本进行管理,不会实际引入jar-->
<dependencyManagement>
<dependencies>
<!-- Elasticsearch -->
<dependency>
<groupId>org.elasticsearch.client</groupId>
<artifactId>transport</artifactId>
<version>6.2.2</version>
</dependency>
<dependency>
<!-- required by elasticsearch -->
<groupId>org.elasticsearch.plugin</groupId>
<artifactId>transport-netty4-client</artifactId>
<version>6.2.2</version>
</dependency>
<dependency>
<groupId>org.elasticsearch.client</groupId>
<artifactId>elasticsearch-rest-high-level-client</artifactId>
<version>6.2.2</version>
<exclusions>
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
</dependencyManagement>
还没有评论,来说两句吧...