Клиент Java elasticsearch всегда null

недавно я сделал переключатель с elasticsearch 1.7 на 2.0, и я заметил, как вы настроили клиент изменился. Я просмотрел документацию, и по какой-то причине клиент всегда равен нулю. Мне было интересно, правильно ли я его настроил.

вот мой код:

    Client client = null;

    try {
        client = TransportClient.builder().build().addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("localhost"), 9300));
    } catch (Exception e) {
        Logger.log(e);
    } finally {
        client.close();
        try {
            conn.close();
        } catch (SQLException e) {
            Logger.log(e);
        }
    }

1 ответов


Как отмечено в комментариях, но немного подробнее: Elasticsearch 2.0 использует Guava 18.0 (см.https://github.com/elastic/elasticsearch/pull/7593). Итак, чтобы исправить ошибки, такие как java.lang.NoSuchMethodError: com.google.common.util.concurrent.MoreExecutors.directExecutor()Ljava/util/concu‌rrent/Executor;, обязательно используйте Guava 18.0 как зависимость, а не другие версии.