Spring Cloud Bus集成RabbitMQ应用启动失败 版本不兼容问题咨询
问题根源
你遇到的报错是典型的Spring Boot与Spring Cloud版本不兼容导致的依赖冲突:
Spring Cloud 2020.0.x(代号Ilford)的最高兼容Spring Boot版本为2.4.x,你当前使用的Spring Boot 2.5.3超出了该版本适配范围,导致依赖引入的spring-integration-amqp:5.5.2版本中,AmqpInboundChannelAdapter类的构造方法签名发生了变更,而Spring Cloud Stream Binder Rabbit的对应版本仍在调用已废弃的旧构造方法,最终触发方法不存在的异常。
解决方案
你可以任选以下任意一种方案修改配置,修改后执行./gradlew clean build清理旧依赖重新构建即可:
方案1:降级Spring Boot版本
将build.gradle中Spring Boot插件版本降级到与Spring Cloud 2020.0.3适配的2.4.x最新稳定版即可:
plugins { // 把原来的2.5.3改成2.4.13即可,其余配置保持不变 id 'org.springframework.boot' version '2.4.13' id 'io.spring.dependency-management' version '1.0.11.RELEASE' id 'java' }
方案2:升级Spring Cloud版本
将Spring Cloud版本升级到适配Spring Boot 2.5.x的2021.0.x系列即可:
ext { // 把原来的2020.0.3改成2021.0.5即可,其余配置保持不变 set('springCloudVersion', "2021.0.5") }
内容的提问来源于stack exchange,提问作者pablo lamberti
相关产品推荐
相关产品推荐

