一些遇到的错误,小总结
问题描述
Failed to declare queue(s):[XXX]
在SpringBoot中使用RabbitMQ时,遇到了如题目所示的错误
即,队列创建失败。
方案总结
首先,在RabbitMQ的管理页面中,检查看看有没有要用的队列。
如果有要用的
看看名字是否对的上,就 提示创建失败的队列和要用的队列,是不是一个队列。
比如,要用的是a队列,管理页面也有a,但提示是b队列创建失败。就是说,可能某个地方的队列名写错了,写的不是要用的队列名字a,而是提示创建失败的队列的b。
举个例子,消费者的监听器@RabbitListener(queues = RabbitConfig.xxx)这个地方,就可以检查一下,要监听 队列的名字 是不是写错了。
是小错误,但遇到就很烦。
如果没有要用的队列
3. 队列创建代码上,是不是没有@Bean
4. 检查一下配置文件的端口,是15672还是5672
前者是控制台的访问端口,后者是应用访问的端口
5. 要不就尝试在控制台手动创建或者使用RabbitAdmin代码创建?
问题描述
the value ‘0’ of type ‘signedint’ but current is none
就,这里有个值,它的类型是啥啥,但是本来是没有这个值的。
方案
这个问题,其实是因为,这个队列已经创建好了,但是之后又想给这个队列配置一些参数,比如x-message-ttl,导致的。
所以,就直接创建一个新的队列吧。
即试试修改创建队列的方法名、队列的名字。
猜你喜欢
网友评论
- 搜索
- 最新文章
- 热门文章