@RabbitListener( bindings = { @QueueBinding( exchange = @Exchange(name = "test_event", type = "topic"), value = @Queue(name = "test_queue"), key = "event.test.*.*" ) }, ackMode = "MANUAL")
这种订阅不起作用,没有初始化mq连接,也没有生成队列test_queue,找了好久才发现,需要写autoStartup = "true",这个配置一般不用写,刚好有个项目用spring-rabbit版本为2.3.16需要写,正确方式如下,即可正常消费
@RabbitListener(
bindings = {
@QueueBinding(
exchange = @Exchange(name = "test_event", type = "topic"),
value = @Queue(name = "test_queue"),
key = "event.test.*.*"
)
},autoStartup = "true",
ackMode = "MANUAL")