Spring Integration团队自豪地宣布Spring Integration Extensions存储库可用。这个新的基于GitHub的存储库的主要目标是促进适配器和扩展开发人员的活跃社区,并鼓励更广泛的社区成员为该项目做出贡献。Spring Integration Extensions项目托管在:
这个新的存储库将使我们能够更快速地整合新的贡献,而无需经过核心Spring Integration框架更严格的审核流程。由于每个社区贡献的扩展都是Spring Integration Extensions存储库中的一个单独项目,因此它将拥有独立于管理核心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模式和相关的解析器类。即使您创建其他类型的组件,此模板仍然可以为您提供有关如何开发这些组件的宝贵见解。有关在Spring Integration中使用STS模板的更多信息,请参见以下博客文章:
创建的适配器项目将使用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存储库的列表: