我正在尝试在Spring中配置RabbitMQ集群,所以我遵循了Spring AMQP文档(http://docs.spring.io/spring-amqp/reference/html/amqp.html),但在添加地址时出错:
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:rabbit="http://www.springframework.org/schema/rabbit"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
http://www.springframework.org/schema/rabbit
http://www.springframework.org/schema/rabbit/spring-rabbit-1.0.xsd">
<rabbit:connection-factory id="connectionFactory" addresses="host1,host2" />
我在gradle中定义的依赖项:
compile group: 'org.springframework.amqp', name: 'spring-amqp', version:'1.2.0.RELEASE'
compile group: 'org.springframework.amqp', name: 'spring-rabbit', version:'1.2.0.RELEASE'
任何人都知道为什么会这样吗? 谢谢!
编辑: 我得到的错误是: cvc-complex-type.3.2.2:属性'addresses'不允许出现在元素'rabbit:connection-factory'中。 主机1&amp; host2是虚拟机的IP。
答案 0 :(得分:3)
这是因为您在schemaLocation
中为版本1.0声明了spring-rabbit XSD文件。只需改变:
http://www.springframework.org/schema/rabbit/spring-rabbit-1.0.xsd
到
http://www.springframework.org/schema/rabbit/spring-rabbit-1.2.xsd
以匹配你的春兔版本,它应该可以工作。