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

SpringBoot2.1.4整合RabbitMQ切换Stomp中继启动失败求助

解决Spring Boot 2.1.4 + Stomp Broker Relay启动失败的问题

从你提供的报错日志来看,核心问题是java.lang.NoClassDefFoundError: io/netty/util/concurrent/EventExecutor——这是因为Stomp Broker Relay模式需要依赖Netty组件来实现与外部消息代理(比如你的RabbitMQ)的TCP通信,而simple broker模式不需要这部分依赖,所以之前能正常运行。

快速修复步骤

1. 添加Netty依赖

根据你的构建工具,添加对应的Netty依赖:

Maven(pom.xml)

推荐使用Spring Boot的依赖管理来自动匹配兼容版本,避免版本冲突:

<dependency>
    <groupId>io.netty</groupId>
    <artifactId>netty-all</artifactId>
</dependency>

如果需要手动指定版本,Spring Boot 2.1.4对应的兼容版本是4.1.36.Final,你也可以直接使用这个版本号。

Gradle(build.gradle)

implementation 'io.netty:netty-all'

添加依赖后,重新构建并启动项目,这个类找不到的错误应该会消失。

2. 确认RabbitMQ的STOMP插件已启用

别忘了确保你的RabbitMQ已经开启了STOMP服务,执行以下命令启用插件:

rabbitmq-plugins enable rabbitmq_stomp

默认情况下,RabbitMQ的STOMP服务监听61613端口,确保这个端口没有被占用,并且你的Stomp Broker Relay配置指向了正确的地址和端口。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.12 05:21:07