我正在尝试使用AMQP编写Java Spring Boot应用程序来与RabbitMQ服务器通信。我必须使用现有的队列和交换,无权自己声明它们(我也不想)。问题是我无法阻止Spring Integrations尝试在RabbitMQ中声明队列,这会返回错误。
以下是Wireshark发送的消息的屏幕截图:
我的主类带有@EnableBindings(Sink.class)批注。
这是我的application.properties的相关部分:
spring.cloud.stream.bindings.input.group = ********************。instana.test spring.cloud.stream.rabbit.bindings.input.consumer.bind-queue = false spring.cloud.stream.rabbit.bindings.input.consumer.queue-name-group-only = true spring.cloud.stream.rabbit.bindings.input.consumer.declare-exchange = false spring.cloud.stream.rabbit.bindings.input.consumer.durable-subscription = false spring.cloud.stream.rabbit.bindings.input.consumer.exclusive = true
注意:我不想使用特定于RabbitMQ的Spring实现,而是使用Spring云流解决方案。
答案 0 :(得分:0)
目前无法阻止声明队列的尝试。但是您可以忽略该错误。
https://github.com/spring-cloud/spring-cloud-stream-binder-rabbit/issues/184