对应代码:
channel.exchangeDeclare("exchangeName", "fanout");//定义一个交换机,类型是fanout 广播
错误内容:
Caused by: com.rabbitmq.client.ShutdownSignalException: channel error; protocol method: #method<channel.close>(reply-code=406, reply-text=PRECONDITION_FAILED - inequivalent arg 'durable' for exchange 'exchangeName' in vhost '/': received 'false' but current is 'true', class-id=40, method-id=10) at com.rabbitmq.utility.ValueOrException.getValue(ValueOrException.java:66)
修改为:
channel.exchangeDeclare("exchangeName", "fanout", true);//定义一个交换机,类型是fanout 广播
durable:设置是否持久化。durable设置true表示持久化,反之是持久化。持久化可以将将换机存盘,在服务器重启时不会丢失相关信息
durable这个参数,在不穿时,默认应该时false