我使用Spring启动,并希望将启动程序pom用于Spring Integration。
在我的POM中我有:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.4.3.RELEASE</version>
<relativePath/>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-integration</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
这提供了4.3.6版本的Spring Integration jar和4.3.5的Spring Framework jar。在我自己的一个课程中,我尝试使用Message:
import org.springframework.integration.Message;
public Object doThings(Message<?> message) {
}
但我似乎无法找到Message。在旧版本的Spring集成中,它是在spring-integration-core.jar中,但在这个版本中并不存在。它有移动还是有变化?我已经检查了文档并且它仍然被引用,所以我假设我在错误的地方寻找 - 但核心听起来应该是它应该对我来说的地方!我做错了什么?
答案 0 :(得分:2)
Spring Integration的一些核心概念已经在版本3.0和4.0之间的Spring Core中合并,而org.springframework.integration.Message
就是其中之一。
在您的代码示例中,替换
import org.springframework.integration.Message;
public Object doThings(Message<?> message) {
}
通过
import org.springframework.messaging.Message;
public Object doThings(Message<?> message) {
}
会做到这一点。
有关受影响的类和接口的更详尽列表,请查看the 3.0 to 4.0 Spring Integration migration guide
答案 1 :(得分:0)
我可以使用此版本
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-messaging</artifactId>
<version>4.1.9.RELEASE</version>
</dependency>
和
import org.springframework.messaging.Message;