我可以在我的 Spring 引导应用程序中使用 Spring 集成模块吗?



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

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

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

由于应用程序不太可能需要所有 Spring 集成模块(ftp、sftp、http、mqtt、...等(,启动器只包含类路径上的核心和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>

请注意,您不需要<version/> - boot 将为您管理它并引入与核心相对应的正确版本。

模块本身将引入它们所需的任何其他传递依赖项。因此,您只需要将顶级模块添加到您的pom中即可。

最新更新