簡體   English   中英

spring 啟動 elasticsearch java.lang.NoSuchFieldError: INDEX_CONTENT_TYPE 錯誤

[英]spring boot elasticsearch java.lang.NoSuchFieldError: INDEX_CONTENT_TYPE error

java.lang.NoSuchFieldError: INDEX_CONTENT_TYPE 錯誤

Elasticsearch 版本:7.16.2

    // elasticsearch
    implementation 'org.springframework.data:spring-data-elasticsearch:4.3.0'
    implementation 'org.elasticsearch:elasticsearch:7.16.2'
    implementation 'org.elasticsearch.client:elasticsearch-rest-high-level-client:7.16.2'

    // jackson-core
    implementation 'com.fasterxml.jackson.core:jackson-core:2.13.1'
public <T> void bulk(String indexName, List<T> documents, Class<T> tClass) {
        elasticsearchIndex.setIndexName(indexName);
        List<IndexQuery> queries = new ArrayList<>();
        for (T document : documents) {
            IndexQuery query = new IndexQueryBuilder()
                    .withObject(document)
                    .build();
            queries.add(query);
        }
        IndexOperations indexOps = elasticsearchTemplate.indexOps(tClass);
        if (!indexOps.exists()) {
            indexOps.create();
            indexOps.putMapping(indexOps.createMapping());
        }
        elasticsearchTemplate.bulkIndex(queries, tClass); // error
    }
@Getter @Setter @ToString
@Document(indexName = "#{@elasticsearchIndex.getIndexName()}")

java.lang.NoSuchFieldError:INDEX_CONTENT_TYPE

刪除 gradle 構建

並添加

implementation 'org.springframework.boot:spring-boot-starter-data-elasticsearch:2.6.2'

我遇到了同樣的問題。 我通過將 Elastic Search 和依賴項從7.16降級到7.15解決了這個問題。

當前文檔顯示7.15.2是當前支持(或測試發布)的最高版本。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM