我最近已经从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);
}
}
如评论中所述,但有一些更详细的信息: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/concurrent/Executor;
,请确保使用Guava 18.0作为依赖项,而不是其他版本。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句