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

无法加载EurekaServerAutoConfiguration类,Spring Boot Eureka Server版本问题排查

解决Spring Boot 2.0.1.RELEASE搭建Eureka Server时的配置类加载错误

这个问题我之前帮不少开发者排查过,确实是Spring Boot与Spring Cloud的版本不兼容导致的——这两个框架有严格的版本绑定关系,错配的话就会出现找不到EurekaServerAutoConfiguration这类自动配置类的情况,咱们一步步来解决:

1. 明确版本对应关系

Spring Boot 2.0.x系列对应的Spring Cloud版本是Finchley系列,其中和2.0.1.RELEASE最匹配的是Finchley.SR1(SR版本是Service Release,修复了基础版本的部分bug,稳定性更高)。

2. 修改pom.xml的依赖配置

你需要在pom.xml中添加Spring Cloud的依赖管理(这一步非常关键,能统一管理所有Spring Cloud组件的版本,避免版本混乱),同时确保Eureka Server的依赖正确:

第一步:添加dependencyManagement节点

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF8</project.reporting.outputEncoding>
    <java.version>1.8</java.version>
    <!-- 定义Spring Cloud版本,方便后续维护 -->
    <spring-cloud.version>Finchley.SR1</spring-cloud.version>
</properties>

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-dependencies</artifactId>
            <version>${spring-cloud.version}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

第二步:确保Eureka Server依赖正确

在dependencies节点中添加Eureka Server的starter依赖:

<dependencies>
    <!-- Spring Boot基础Web依赖 -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <!-- Eureka Server核心依赖 -->
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
    </dependency>
</dependencies>

3. 检查主应用类的注解

确保你的主应用类同时标注了@SpringBootApplication和@EnableEurekaServer,示例代码如下:

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;

@SpringBootApplication
@EnableEurekaServer
public class EurekaServerApplication {
    public static void main(String[] args) {
        SpringApplication.run(EurekaServerApplication.class, args);
    }
}

4. 添加基础配置避免自注册

为了防止Eureka Server启动后自己注册为客户端,需要在application.yml或application.properties中添加以下配置:

application.yml示例:

server:
  port: 8761 # Eureka Server默认端口

eureka:
  instance:
    hostname: localhost
  client:
    register-with-eureka: false # 禁止自己注册到Eureka
    fetch-registry: false # 禁止拉取服务注册表
    service-url:
      defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/

做完以上步骤后,重新执行mvn clean install并启动应用,应该就能正常加载EurekaServerAutoConfiguration类,成功启动Eureka Server了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 08:42:33