微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Spring Cloud Netflix-Hystrix gradle 依赖项不允许启动 Spring Boot 应用程序

如何解决Spring Cloud Netflix-Hystrix gradle 依赖项不允许启动 Spring Boot 应用程序

我使用 Spring-BootEureka server 构建了简单的微服务应用程序。现在,我想添加容错,以防在 Eureka 服务器中注册的任何服务关闭。所以,我使用了 netflix-hystrix gradle 依赖。但这种依赖性导致我的应用程序崩溃。

我在运行应用程序时收到以下错误消息

Execution Failed for task ':compileJava'. Could not resolve all files for configuration ':compileClasspath'. Could not find org.springframework.cloud:spring-cloud-starter-netflix-hystrix:.

作为参考,我添加build.gradle 文件的片段。

plugins {
    id 'org.springframework.boot' version '2.4.4'
}

ext {
    set('springCloudVersion',"2020.0.2")
}

dependencies {
    implementation 'org.springframework.cloud:spring-cloud-starter-netflix-hystrix'
}

dependencyManagement {
    imports {
        mavenBom "org.springframework.cloud:spring-cloud-dependencies:${springCloudVersion}"
    }
}

解决方法

我相信您还应该指定依赖项的 version

implementation group: 'org.springframework.cloud',name: 'spring-cloud-starter-netflix-hystrix',version: '2.2.7.RELEASE'
,

我遇到了同样的问题,并找到了这个官方 link 他们说:

正如所宣布的,以下模块已从 spring-cloud-netflix 中删除:

  • ...
  • spring-cloud-netflix-hystrix
  • spring-cloud-starter-netflix-hystrix
  • ...(其他一些 spring-cloud-netflix-* 子项目)

所以看来Hystrix依赖将不再由spring-cloud-release管理。这就是您必须手动指定版本的原因。 无论如何,这并不意味着 Spring Hystrix 将被弃用,但我还不知道那部分......

我现在回答这个问题是因为我在挖掘了很多之后找到了它并且不想让任何人再次这样做。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。