繁体   English   中英

使用 spring-boot-starter-integration 时找不到 org.springframework.integration.Message

[英]Cannot find org.springframework.integration.Message when using spring-boot-starter-integration

我正在使用 Spring Boot 并希望使用 starter 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) {
}

但我似乎无法找到消息。 在旧版本的 Spring 集成中,它位于 spring-integration-core.jar 中,但在此版本中不存在。 它移动了还是发生了一些变化? 我已经检查了文档并且它仍然被引用,所以我认为我在错误的地方寻找 - 但核心听起来像它应该在我的地方! 我究竟做错了什么?

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) {
}

会做的伎俩。

有关受影响的类和接口的更详尽列表,请查看3.0 到 4.0 Spring Integration 迁移指南

使用这个版本对我来说没问题

<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-messaging</artifactId>
<version>4.1.9.RELEASE</version>
</dependency>

import org.springframework.messaging.Message;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM