gpt4 book ai didi

java.lang.NoSuchMethodError : org. elasticsearch.action.bulk.BulkRequest.pipeline()Ljava/lang/String;

转载 作者:行者123 更新时间:2023-12-02 01:37:59 25 4
gpt4 key购买 nike

我正在使用 java 的 High Level Rest 客户端。具体版本是6.6.1,相对于ES v6.6.1

当我尝试执行全部为 IndexRequest 的 BulkRequest 时,出现以下错误

java.lang.NoSuchMethodError: org.elasticsearch.action.bulk.BulkRequest.pipeline()Ljava/lang/String;

很高兴提出问题,但想知道是否有人知道发生了什么,以防万一这不是问题。

下面是我正在使用的代码。如果有人知道这个错误是什么,我将不胜感激。

我肯定使用 lib 6.6.1

compile 'org.elasticsearch.client:elasticsearch-rest-high-level-client:6.6.1'

谢谢

BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
credentialsProvider.setCredentials(AuthScope.ANY, new UsernamePasswordCredentials("elastic", "changeme"));

RestClientBuilder builder = RestClient.builder(new HttpHost("asus.local", 9200))
.setHttpClientConfigCallback(httpClientBuilder -> httpClientBuilder.setDefaultCredentialsProvider(credentialsProvider));
RestHighLevelClient client = new RestHighLevelClient(builder);
BulkRequest request = new BulkRequest();

String line;
while ((line = reader.readLine()) != null) {
String[] split = line.split(",");
Date date = new SimpleDateFormat("yyyy-MM-dd HH:mm").parse(split[0]);
Map< String, Object> jsonMap = new HashMap< String, Object>();
jsonMap.put("valuedate", date);
jsonMap.put("value", Double.valueOf(split[1]));
IndexRequest indexRequest = new IndexRequest("my_index", "doc", String.valueOf(row))
.source(jsonMap);
request.add(indexRequest);
}

System.out.println("starting bulk call");
BulkResponse bulkResponse = client.bulk(request, RequestOptions.DEFAULT);
System.out.println("DONE");

最佳答案

public String pipeline() {
return globalPipeline;
}

版本 6.6 添加了方法Elasticsearch Server的模块(GitHub file - 6.6 branch)。

确保所有 Elastic Search模块共享相同的版本。
正如您所写的Rest Client6.6.1 ,我怀疑Server其中一个比该值更老 ( < 6.6 )。

你需要

<dependency>
<groupId>org.elasticsearch</groupId>
<artifactId>elasticsearch</artifactId>
<version>6.6.1</version>
</dependency>

或者对于 Gradle

implementation 'org.elasticsearch:elasticsearch:6.6.1'

关于java.lang.NoSuchMethodError : org. elasticsearch.action.bulk.BulkRequest.pipeline()Ljava/lang/String;,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54933246/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com