如何解决 Spring Boot 3.2.2 连接 RocketMQ 5.1.2 时的启动失败问题?

在开发过程中,经常会遇到不同软件版本之间的兼容性问题。近期,有开发者在尝试使用 spring boot 3.2.2 连接 rocketmq 5.1.2 时,遇到了启动失败的情况。具体错误信息如下:

Started container failed. DefaultRocketMQListenerContainer{consumerGroup='topic_02_CONSUMER', namespace='', namespaceV2='', nameServer='192.168.50.20:9876', topic='topic_02', consumeMode=CONCURRENTLY, selectorType=TAG, selectorExpression='*', messageModel=CLUSTERING', tlsEnable=false, instanceName=DEFAULT} java.lang.IllegalStateException: org.apache.rocketmq.remoting.exception.RemotingSendRequestException: send request to 192.168.50.20:9876> failed

该开发者在 windows 10 上启动了 namesrv、broker 和 proxy,使用的 RocketMQ 版本为 5.1.2,rocketmq-spring-boot 版本为 2.3.2,spring boot 版本为 3.2.2。尽管尝试了降级版本,仍未能解决问题。

面对这种情况,一个有效的解决方法是调整项目的依赖配置。以下是一个经过验证的 pom.xml 文件配置示例,供大家参考:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemalocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelversion>4.0.0</modelversion><groupid>com.example</groupid><artifactid>rocketmq-test</artifactid><version>0.0.1-SNAPSHOT</version><parent><groupid>org.springframework.boot</groupid><artifactid>spring-boot-starter-parent</artifactid><version>3.2.2</version></parent><dependencies><dependency><groupid>org.springframework.boot</groupid><artifactid>spring-boot-starter</artifactid></dependency><dependency><groupid>org.apache.rocketmq</groupid><artifactid>rocketmq-spring-boot-starter</artifactid><version>2.3.2</version></dependency><dependency><groupid>org.apache.rocketmq</groupid><artifactid>rocketmq-client</artifactid><version>5.1.2</version></dependency><dependency><groupid>org.apache.rocketmq</groupid><artifactid>rocketmq-acl</artifactid><version>5.1.2</version></dependency><dependency><groupid>org.apache.rocketmq</groupid><artifactid>rocketmq-common</artifactid><version>5.1.2</version></dependency><dependency><groupid>org.apache.rocketmq</groupid><artifactid>rocketmq-remoting</artifactid><version>5.1.2</version></dependency><dependency><groupid>org.apache.rocketmq</groupid><artifactid>rocketmq-srvutil</artifactid><version>5.1.2</version></dependency><dependency><groupid>org.apache.rocketmq</groupid><artifactid>rocketmq-proto</artifactid><version>2.0.2</version></dependency></dependencies><build><plugins><plugin><groupid>org.springframework.boot</groupid><artifactid>spring-boot-maven-plugin</artifactid></plugin></plugins></build></project>

通过调整项目依赖,并确保所有必需的 RocketMQ 组件都正确配置,可以有效地解决 Spring Boot 3.2.2 与 RocketMQ 5.1.2 之间的连接问题。希望这个配置能帮助到遇到类似问题的开发者。

如何解决 Spring Boot 3.2.2 连接 RocketMQ 5.1.2 时的启动失败问题?

© 版权声明
THE END
喜欢就支持一下吧
点赞10 分享