zoukankan      html  css  js  c++  java
  • springboot 项目依赖 es包版本异常

     在项目pom.xml中加入依赖

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

     发现项目总会拉下 6.4.3 的版本,并且项目中也会引用这个版本然后启动项目,还会发现找不到方法的异常

    Exception in thread "main" java.lang.NoSuchMethodError: org.elasticsearch.client.Request.addParameters(Ljava/util/Map;)V
    at org.elasticsearch.client.RequestConverters.index(RequestConverters.java:341)
    at org.elasticsearch.client.RestHighLevelClient.internalPerformRequest(RestHighLevelClient.java:1510)
    at org.elasticsearch.client.RestHighLevelClient.performRequest(RestHighLevelClient.java:1484)
    at org.elasticsearch.client.RestHighLevelClient.performRequestAndParseEntity(RestHighLevelClient.java:1454)
    at org.elasticsearch.client.RestHighLevelClient.index(RestHighLevelClient.java:871)
    at com.majb.es.ESMain.main(ESMain.java:23)

    点进去发现 RequestConverters 引用的7.6.1版本,

    而Request 引用的却是6.4.3版本。 很明显是版本的问题了。那就奇怪了,我引用的7.6.1版本,但是rest-client包却是6.4.3。

    原因是因为我用的springboot版本是2.1.6。 这个版本的springboot默认引用的是es 的6.4.3版本。所以我们要在pom.xml中显式的指定es的版本

     <properties>
            <elasticsearch.version>7.6.1</elasticsearch.version>
        </properties>
  • 相关阅读:
    WinRAR v5.90中文正式32&64位整合安装版
    WIN10永久激活工具 HWIDGEN
    Adobe2020套装激活工具
    keka 1.1.26-压缩工具
    python文件和目录操作方法大全(含实例)
    如何使公网能够访问本地web服务器?
    网线那根正极那根负极
    HPUX 大文件系统扩容
    LESS详解之函数(四)
    Win7 安装Apache 2.2.4报错:<OS 5>拒绝访问. :Failed to open the WinNT service manager
  • 原文地址:https://www.cnblogs.com/zhangXingSheng/p/12500296.html
Copyright © 2011-2022 走看看