Spring运行程序RabbitMQ并没有自动创建队列的问题解决

几天前遇到了一个问题,如标题所说,自己代码@使用RabbitListener绑定一个交换机,但是代码运行后交换机按照配置项创建了出来,但是队列却无法创建成功,也就绑定失败了。

运行后就会抛出异常:

总体来说就是无法创建队列,这时检查我们的交换机已经创建出来了,那么这是我为什么呢?

解决方法:

这是因为我的代码

复制代码
@QueueBinding(
    value = @Queue(name = "custom_edit_user_queue"), 
    exchange = @Exchange(value = RabbitConfig.EXCHANGE_NAME, type = ExchangeTypes.FANOUT))

当我们使用@Exchange,如果我们不指定autoDelete属性他就是默认autoDelete = false,但是我所设计的交换机autoDelete=true。所以导致程序在检验绑定的交换机时,发现我所创建的交换机与我要绑定的交换机所声明的属性有所不同。我们直接显式的确定绑定交换机的autoDelete属性为true即可,如下代码。不然就会抛出如上异常。

相关推荐
dddaidai1233 分钟前
深入JVM(四):垃圾收集器
java·开发语言·jvm
BBB努力学习程序设计9 分钟前
Java方法(函数)完全指南:初学者的第一个"工具箱"
java
爬山算法22 分钟前
Netty(19)Netty的性能优化手段有哪些?
java·后端
love is sour34 分钟前
深入浅出 jmap:Java 内存分析的“显微镜“
java·开发语言·测试工具·性能优化
想用offer打牌36 分钟前
虚拟内存与寻址方式解析(面试版)
java·后端·面试·系统架构
代码or搬砖39 分钟前
SQL核心语法总结:从基础操作到高级窗口函数
java·数据库·sql
月明长歌44 分钟前
【码道初阶】【Leetcode94&144&145】二叉树的前中后序遍历(非递归版):显式调用栈的优雅实现
java·数据结构·windows·算法·leetcode·二叉树
杰克尼1 小时前
蓝桥云课-5. 花灯调整【算法赛】
java·开发语言·算法
wanghowie1 小时前
01.02 Java基础篇|核心数据结构速查
java·开发语言·数据结构
乂爻yiyao1 小时前
java并发演进图
java