You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

升级Spring Boot/Cloud及Java版本后出现Elasticsearch自动配置错误

问题分析与解决方案

核心原因

错误栈底层的ClassNotFoundException: org.springframework.data.elasticsearch.client.ClientConfiguration$ClientConfigurationCallback明确指向:Spring Data Elasticsearch版本与当前Spring Boot 2.7.11不兼容,导致所需类无法加载。

Spring Boot 2.7.x默认适配Spring Data Elasticsearch 4.4.x系列,若项目中手动指定了不兼容的版本,或是Spring Cloud依赖引入了冲突的子版本,就会触发该问题。

解决方案

  • 统一依赖版本管控:让Spring Boot Parent管理Spring Data Elasticsearch版本,不要手动指定版本。以Maven为例,只需引入标准依赖:
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-elasticsearch</artifactId>
    </dependency>
    
  • 排查并排除依赖冲突:执行mvn dependency:tree(Maven)或./gradlew dependencies(Gradle)查看依赖树,找出引入不兼容Spring Data Elasticsearch版本的依赖,通过<exclusions>标签排除冲突项。
  • 清理缓存重建项目:删除本地Maven/Gradle缓存(如~/.m2/repository或~/.gradle/caches),再执行mvn clean install或./gradlew clean build重新构建。
  • 临时禁用无关自动配置:若项目不需要Reactive Elasticsearch客户端,可在启动类中排除对应自动配置类规避问题:
    @SpringBootApplication(exclude = {ReactiveElasticsearchRestClientAutoConfiguration.class})
    public class CdpDataStorageApplication {
        public static void main(String[] args) {
            SpringApplication.run(CdpDataStorageApplication.class, args);
        }
    }
    

内容的提问来源于stack exchange,提问作者Ali

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 02:25:35