【问题标题】:Can I use Spring integration modules in my Spring boot application?我可以在我的 Spring Boot 应用程序中使用 Spring 集成模块吗?
【发布时间】:2018-05-02 02:38:43
【问题描述】:

我正在尝试为我的 ftp 服务器创建一个文件下载端点。我看到有一个用于 Spring Boot 的 Spring Boot 集成启动模块,但该模块不包含像 DefaultFtpSessionFactory 这样的类。我在网上看到还有其他可用的模块,例如 Spring 集成 http 和 Spring 集成 ftp。但是,这些不是 Spring Boot 模块。无论如何将这些模块包含在我的 POM 中是否可以节省?或者我不应该首先使用 Spring Boot Starter 集成吗?

我在这个例子中看到:https://blog.pavelsklenar.com/spring-integration-sftp-upload-example/ 作者在 Spring Integration 4.3.8 常规 Spring 旁边使用 Spring Boot。他确实说这些是由 Spring Boot 管理的,但我不确定他的意思。

如果我想制作下载功能,谁能告诉我应该包含哪些模块?谢谢

【问题讨论】:

    标签: java spring-boot spring-integration


    【解决方案1】:

    由于应用程序不太可能需要所有 Spring Integration 模块(ftp、sftp、http、mqtt、...等),因此启动器仅在类路径中包含 core 和 java dsl jar(在 Spring Integration 5.0 中, DSL 是内置的,所以 boot 2.0 只包含核心 jar)。

    否则,您最终会在类路径中得到许多您不需要的 jar。

    所以,是的,您必须手动添加所需的依赖项...

    <dependency>
        <groupId>org.springframework.integration</groupId>
        <artifactId>spring-integration-ftp</artifactId>
    </dependency>
    

    请注意,您不需要需要&lt;version/&gt; - boot 会为您管理它并引入与核心相对应的正确版本。

    模块本身会带来他们需要的任何额外的传递依赖。因此,您只需将顶级模块添加到您的 pom 中。

    【讨论】:

      猜你喜欢
      • 2017-12-13
      • 2021-02-19
      • 2018-04-15
      • 1970-01-01
      • 2016-01-08
      • 2019-09-12
      • 2018-10-20
      • 2011-05-03
      • 1970-01-01
      相关资源
      最近更新 更多