我从2迁移到Elasticsearch 5,我们有在没有ES节点可用的构建服务器上运行的集成测试.我们使用了以前版本的ES中的NodeBuilder来按需创建内存节点,但是我找不到如何在版本5中做同样的事情.
第一次在堆栈中发帖溢出,抱歉如果有任何错误,请问我的问题.
我在内存中启动客户端时遇到了完全相同的问题,但我无法使用具有NoNodeAvailableException的传输客户端作为错误消息进行连接.
Settings settings = Settings.builder()
.put("path.home", "target/elasticsearch")
.put("transport.type", "local")
.put("http.enabled", false)
.build();
node = new Node(settings).start();
Run Code Online (Sandbox Code Playgroud)
现在,在我的测试中,我将node().client()注入到存储库中并且它工作正常.
对于整个代码,spring boot和ES 5没有不支持ES 5的spring-data:https: //github.com/jomilanez/elastic5
NodeBuilder从 ES 5 中的 API 中删除,可以实现相同的效果,将“transport.type”“local”添加到设置中并使用以下命令创建节点
new Node(settings).start().client()
| 归档时间: |
|
| 查看次数: |
3170 次 |
| 最近记录: |