файл класса для org.elasticsearch.client.Cancellable не найден - PullRequest
0 голосов
/ 14 апреля 2020

Я создаю приложение весенней загрузки дляasticsearch 7.6.2.
Я получаю class file for org.elasticsearch.client.Cancellable not found ошибку при сборке.

public class UpdateES {
    private static final Logger LOGGER = (Logger) LogManager.getLogger(UpdateES.class);
    public RestHighLevelClient esClient;

UpdateES(){
    int elasticPort = 9200;
    String elasticHost = "localhost";
    this.esClient = new RestHighLevelClient(RestClient.builder(
            new HttpHost(elasticHost, elasticPort,"http")));
}

public void update_ES(){
    UpdateByQueryRequest request = new UpdateByQueryRequest("air_messages");
    request.setConflicts("proceed");
    request.setBatchSize(10);
    request.setScript(
            new Script(
                    ScriptType.INLINE, "painless",
                    "if (ctx._source._id < 10000) {ctx._source.update += 1}",
                    Collections.emptyMap()));
    ActionListener<BulkByScrollResponse> listener = new ActionListener<BulkByScrollResponse>() {
        @Override
        public void onResponse(BulkByScrollResponse bulkResponse) {
            LOGGER.info("Successfully Updated");
        }

        @Override
        public void onFailure(Exception e) {
            LOGGER.info("Failed updating");
        }
    };
    esClient.updateByQueryAsync(request,RequestOptions.DEFAULT,listener);
}

} `

1 Ответ

0 голосов
/ 14 апреля 2020

Проверьте, имеют ли elasticsearch-rest-high-level-client и elasticsearch-rest-client одинаковые версии в вашем классе.

compile 'org.elasticsearch.client:elasticsearch-rest-client:7.6.2'

Причина - elasticsearch-rest-high-level-client транзитивно зависит от elasticsearch-rest-client. Проверьте, не указали ли вы явно более низкую версию rest-client. Поддерживайте одинаковую версию для обеих библиотек в вашем classpath. Если вы используете инструмент сборки, такой как Maven или Gradle, он будет автоматически позаботиться, если вы явно не переопределите его с более низкой версией.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...