我的springboot应用程序中有以下代码
@Bean
public IntegrationFlow amqpInbound(ConnectionFactory connectionFactory) {
return IntegrationFlows.from(Amqp.inboundAdapter(connectionFactory, "aName"))
.handle(m -> System.out.println(m.getPayload()))
.get();
}
当我运行启动应用程序时,出现以下异常!
org.springframework.beans.factory.BeanCreationException:创建在类路径资源[com / mitchell / csg / acsstatefarmedibundler / filesHandler / FileMonitorBeanRegistry.class]中定义的名称为'amqpInbound'的bean时出错:通过工厂方法的Bean实例化失败;嵌套的异常是org.springframework.beans.BeanInstantiationException:无法实例化[org.springframework.integration.dsl.IntegrationFlow]:工厂方法“ amqpInbound”引发了异常;嵌套的异常是java.lang.NoSuchMethodError:org.springframework.integration.amqp.support.DefaultAmqpHeaderMapper:方法()V未找到
这是我的pom.xml。
<dependency>
<groupId>org.springframework.integration</groupId>
<artifactId>spring-integration-amqp</artifactId>
<version>5.1.0.RELEASE</version>
</dependency>
我在这里没有其他人的依赖吗?
答案 0 :(得分:1)
由于您提到的是Spring Boot,因此没有必要为了依赖而覆盖版本。现在看来您的Spring Boot版本不是2.1
,这使得所有依赖项都与提到的Spring Integration版本兼容。
好吧,为您提供的简单答案是从该spring-integration-amqp
依赖项中删除一个版本,并完全依赖于Spring Boot管理。