Baeldung ElasticSearch示例依赖缺失:无法导入ClientConfiguration等类
问题根源
你无法识别的ClientConfiguration、RestClients属于Spring Data Elasticsearch模块的封装类,你当前引入的仅为Elasticsearch官方原生客户端依赖,未包含Spring Data Elasticsearch相关组件,因此无法找到对应导入路径。
解决方案
方案1:Spring Boot项目引入对应Starter
直接添加Spring Data Elasticsearch官方Starter依赖,需保证依赖版本与你当前使用的Spring Boot版本完全一致,对应ES 7.6.2的Spring Boot版本为2.3.x系列:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-elasticsearch</artifactId> <!-- 版本号与项目Spring Boot版本保持一致即可,2.3.x版本默认适配ES 7.6.2 --> </dependency>
方案2:非Spring Boot项目单独引入依赖
普通Spring项目单独引入Spring Data Elasticsearch依赖,选择4.0.x版本即可适配ES 7.6.2:
<dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-elasticsearch</artifactId> <version>4.0.9.RELEASE</version> </dependency>
注意事项
- 所有Elasticsearch相关依赖的版本必须严格匹配,跨大版本会出现类不兼容、方法不存在等问题
- 新增依赖后需刷新Maven依赖,可清理IDE缓存后重启,避免IDE缓存导致类仍无法识别
- 如果你不需要使用Spring Data Elasticsearch的封装能力,仅使用原生
RestHighLevelClient完成开发,可以直接参考原生客户端初始化逻辑,无需引入上述Spring Data相关依赖,也不需要用到ClientConfiguration和RestClients类
内容的提问来源于stack exchange,提问作者ThaisK
相关产品推荐
相关产品推荐

