Spring Integration 团队荣幸地宣布 Spring Integration 扩展 存储库的可用性。这个新的基于 GitHub 的存储库的主要目标是促进一个活跃的适配器和扩展开发人员社区,并鼓励更广泛的社区参与该项目。Spring Integration 扩展项目托管在
这个新的存储库将使我们能够更快速地整合新的贡献,而无需经过核心 Spring Integration 框架更严格的审查流程。由于每个社区贡献的扩展都是 Spring Integration 扩展 存储库中的一个独立项目,它将拥有独立于核心 Spring Integration 框架的发布生命周期。因此,这将允许更频繁的发布。
随着时间的推移,我们预计一些较少使用的 Spring Integration 模块可能会转移到 Extensions 存储库中。另一方面,对于某些扩展模块,Spring Integration Extensions 项目也可以作为孵化器,最终它们可能会被整合到核心 Spring Integration 框架中。
感谢多个社区贡献,新的存储库已经提供了几个适配器,例如 XQuery 适配器(包括对 XPath 2.0 的支持)和 SMB 适配器。未来几周内将添加几个围绕 Amazon Web Services (AWS) 的适配器(Amazon S3、Amazon SNS、Amazon SQS)。此外,我们正在提供一个早期版本的 打印适配器,我们还在开发一个使用 Atmosphere 提供 WebSocket 支持的适配器。
我如何成为贡献者?
如果您对新的扩展和/或适配器有任何想法,请随时提交 JIRA 票证。如果您已经创建了一个扩展模块并希望贡献代码,请 fork Spring Integration Extensions 存储库,添加您的模块并提交 pull request。但是,在我们可以合并您的代码之前,您必须填写 贡献者许可协议。提交后,我们和/或其他社区成员将审查您的 pull request 并将其合并。有关更详细的信息,请仔细查看 Spring Integration Extensions 项目的 贡献者指南。
创建新的 Spring Integration 扩展模块
最受欢迎的扩展类型之一是 Spring Integration 适配器。为了简化为 Spring Integration 编写自定义适配器的过程,我们现在为 SpringSource Tool Suite (STS) 3.0.0 提供了 适配器模板。此模板将使贡献者能够非常容易地快速构建新适配器,同时确保与核心 Spring Integration 框架中提供的适配器保持一致(包结构、命名约定、命名空间处理程序/解析器等)。
作为 Spring Integration 模板 项目一部分的 Spring Integration 适配器模板 创建了一个功能齐全的 Spring Integration 模块,并且该模板将创建以下常用组件
该模板不仅会创建核心 Java 类和一些基本的单元测试,还会提供 XML 命名空间支持,其中包括 XML Schema 和相关的解析器类。即使您创建其他类型的组件,此模板也应该为您提供有关如何开发这些组件的宝贵见解。有关使用 STS 模板进行 Spring Integration 的更多信息,请参阅以下博客文章
创建的适配器项目将使用 Gradle 作为其构建工具,并且它严格遵循为 Spring Integration 定义的构建任务
构建适配器项目
$ ./gradlew build
将适配器项目安装到您的本地 Maven 仓库
$ ./gradlew install
生成 JavaDoc
$ ./gradlew api
$ ./gradlew sonar
构建完整的发行版
$ ./gradlew dist
有关更多信息,请参阅 Spring Integration Extensions Wiki 上的 如何创建新组件。
更多资源
Spring Integration GitHub 存储库
为了完整起见,以下是所有 Spring Integration 相关 GitHub 存储库的列表