cek*_*cek 7 elasticsearch spring-boot spring-data-elasticsearch
我正在尝试将我的Spring Boot应用程序连接到本地elasticsearch 5.2.1实例.当我使用" org.springframework.boot:spring-boot-starter-data-elasticsearch "依赖时,我面对" 来自不支持版本的收到消息:[2.0.0]最小兼容版本是:[5.0.0] ".我认为这是由于elasticsearch版本在启动器依赖中是2.4.4.因此,要解决此错误,我可以通过添加elasticsearch.version> 5.2.1/elasticsearch.version> line来编辑pom.xml属性.但这次我得到" java.lang.NoSuchMethodError:org.elasticsearch.client.transport.TransportClient.builder() "
要解决这个问题,我创建自定义配置类,如下所示:
@Configuration
public class ElasticsearchConfiguration {
@Bean
public Client client() throws UnknownHostException {
TransportClient client = new PreBuiltTransportClient(Settings.EMPTY)
.addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("localhost"), 9300));
return client;
}
@Bean
public ElasticsearchTemplate elasticsearchTemplate() throws UnknownHostException {
return new ElasticsearchTemplate(client());
}
}
Run Code Online (Sandbox Code Playgroud)
这次我得到apache.logging.log4j异常(请点击这里),所以我添加了必要的依赖项.
最后,我得到了以下错误并坚持到那里.任何人都可以帮我解决这个问题吗?
嵌套异常是java.lang.NoClassDefFoundError:org/elasticsearch/action/count/CountRequestBuilder
小智 1
我尝试了同样的操作,也遇到了这个错误CountRequestBuilder,原因是该类CountRequestBuilder已被弃用并已从 5.x 弹性搜索版本中删除,该类已被替换,SearchRequestBuilder但不幸的是,spring-data-elasticsearch即使在其 jar 的最新版本中也没有提供该类CountRequestBuilder用于 ElasticSearchTemplate 中。
我也在寻找一些解决方案。如果能够解决我会发帖。
| 归档时间: |
|
| 查看次数: |
6732 次 |
| 最近记录: |