BUG收割机之spring-cloud-eureka-server报错com.sun.jersey.api.client.ClientHandlerException: java.net.Conne》

本文介绍了解决Spring Cloud Eureka Server自我注册时出现的连接拒绝错误的方法。通过在application.yml配置文件中设置eureka.client.register-with-eureka和eureka.client.fetch-registry为false,可以避免Eureka Server尝试注册自身,从而解决此问题。

BUG收割机之spring-cloud-eureka-server报错《com.sun.jersey.api.client.ClientHandlerException: java.net.ConnectException: Connection refused: connect》

话不多说,先上图
在这里插入图片描述
查阅资料后,得知在默认设置下,Eureka服务注册中心也会将自己作为客户端来尝试注册它自己,所以我们需要禁用它的客户端注册行为。
在application.yml文件中设置如下

server:
  port: 8880
eureka:
    client:
  # 此应用为注册中心,false:不向注册中心注册自己。
    register-with-eureka: false
  # 注册中心职责是维护服务实例,false:不检索服务
    fetch-registry: false
    service-url:
    defaultZone: http://localhost:8880/eureka/

然后正常重启即可
在这里插入图片描述
有图有真相的BUG收割机,只为记录成长路上的绊脚石!!!

### Spring Cloud Eureka Server 依赖未解析解决方案 在使用 `Spring Cloud Greenwich.SR1` 版本时,如果遇到 Maven 无法从阿里云 Maven 仓库中找到 `spring-cloud-starter-netflix-eureka-server` 的问题,可以通过以下方法解决。 --- #### 1. 检查 Maven 配置文件 确保 `settings.xml` 文件中正确配置了阿里云 Maven 仓库的镜像。例如: ```xml <mirrors> <mirror> <id>aliyun</id> <name>Aliyun Maven</name> <url>https://maven.aliyun.com/repository/public</url> <mirrorOf>central</mirrorOf> </mirror> </mirrors> ``` 此外,确认项目的 `pom.xml` 文件中包含正确的仓库声明[^2]: ```xml <repositories> <repository> <id>spring-snapshots</id> <name>Spring Snapshots</name> <url>https://repo.spring.io/libs-snapshot</url> <snapshots> <enabled>true</enabled> </snapshots> </repository> <repository> <id>spring-milestones</id> <name>Spring Milestones</name> <url>https://repo.spring.io/libs-milestone</url> </repository> </repositories> ``` --- #### 2. 确保版本兼容性 `Spring Boot` 和 `Spring Cloud` 的版本需要严格匹配。对于 `Greenwich.SR1`,推荐使用 `Spring Boot 2.1.x` 版本。在 `pom.xml` 中声明以下内容: ```xml <properties> <spring-boot.version>2.1.9.RELEASE</spring-boot.version> <spring-cloud.version>Greenwich.SR1</spring-cloud.version> </properties> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-dependencies</artifactId> <version>${spring-boot.version}</version> <type>pom</type> <scope>import</scope> </dependency> <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> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId> </dependency> </dependencies> ``` 上述配置确保了 `Spring Cloud Greenwich.SR1` 的依赖能够正确解析[^1]。 --- #### 3. 强制更新依赖 如果依赖仍然无法下载,可以尝试强制更新依赖: ```bash mvn clean install -U ``` 此命令会强制 Maven 重新检查并下载所有依赖。 --- #### 4. 手动安装依赖 如果网络环境限制导致依赖无法下载,可以手动下载缺失的依赖并安装到本地仓库。例如: ```bash mvn install:install-file -Dfile=<path-to-file> -DgroupId=org.springframework.cloud -DartifactId=spring-cloud-starter-netflix-eureka-server -Dversion=2.1.0.RELEASE -Dpackaging=pom ``` 请注意,具体版本号需与 `Greenwich.SR1` 对应。 --- #### 5. 替代方案:使用其他注册中心 如果 `Eureka` 不再满足需求,可以考虑使用第三方注册中心如 `Consul`。`Consul` 提供了更高的可用性和更丰富的功能[^3]。 --- #### 示例代码:Eureka Server 启动类 以下是一个完整的 Eureka Server 启动类示例: ```java package com.example; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer; @SpringBootApplication @EnableEurekaServer // 开启 Eureka 服务 public class EurekaServerApplication { public static void main(String[] args) { SpringApplication.run(EurekaServerApplication.class, args); } } ``` --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

GG_com

1分也是爱!!!!!!!!!!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值