“Community-Driven Spring Integration Extensions”(社区驱动的 Spring Integration 扩展)是指由 Spring 社区

张开发
2026/4/20 3:51:14 15 分钟阅读

分享文章

“Community-Driven Spring Integration Extensions”(社区驱动的 Spring Integration 扩展)是指由 Spring 社区
“Community-Driven Spring Integration Extensions”社区驱动的 Spring Integration 扩展是指由 Spring 社区而非 Spring 官方核心团队开发、维护和贡献的一系列补充性模块用于增强 Spring Integration 的功能边界支持更多企业集成场景如特定协议适配、云服务连接器、消息中间件桥接等。这些扩展通常以独立的 GitHub 仓库形式存在遵循 Spring Integration 的编程模型如MessageHandler、MessageSource、Channel等抽象并兼容 Spring Boot 自动配置。典型示例包括Spring Integration AWS由社区主导演进后部分被纳入 Spring Cloud AWS提供 S3、SQS、SNS 等 AWS 服务的入站/出站集成Spring Integration RabbitMQ Extensions非官方但广泛使用的增强包支持延迟队列、死信路由策略封装等Spring Integration Zulip / Discord / Telegram 扩展由个人或小团队维护的聊天平台消息收发组件Spring Integration JDBC Extensions如高级批量写入、变更数据捕获 CDC 支持补充标准JdbcMessageStore和JdbcChannelMessageStore的能力。这些扩展通常通过 Maven 引入如org.springframework.integration.extensions:spring-integration-aws需注意版本兼容性应匹配所用 Spring Integration 主版本如 6.x及维护活跃度查看 GitHub stars、最近 commit、Issue 响应等。!-- 示例引入社区维护的 Spring Integration AWS 扩展 --dependencygroupIdorg.springframework.integration.extensions/groupIdartifactIdspring-integration-aws/artifactIdversion3.1.0/version!-- 注意需与 Spring Integration 6.1 兼容 --/dependencyCommunity-Driven Spring Integration ExtensionsThe Spring Integration team proudly announces the availability of the Spring Integration Extensions repository. The main goal for this new GitHub-based repository is to promote a vibrant community of adapter and extension developers, and to encourage a broader segment of the community to contribute to the project. The Spring Integration Extensions project is hosted at:https://github.com/SpringSource/spring-integration-extensionsThis new repository will give us the flexibility to incorporate new contributions much more rapidly, without having to go through the core Spring Integration framework’s stricter vetting process. Since each community contributed extension is a separate project in the Spring Integration Extensions repository, it will have its own release life-cycle independent from the one that governs the core Spring Integration framework. As a result, this will allow for more frequent releases.Over time, we expect that some of the lesser used Spring Integration modules may transition into the Extensions repository. On the other hand, for some extension modules, the Spring Integration Extensions project may also serve as an incubator, whereby they may eventually be incorporated into the core Spring Integration framework.Thanks to several community contributions, the new repository already provides several adapters such as the XQuery Adapter (incl. support for XPath 2.0) and the SMB Adapter. Several adapters around Amazon Web Services (AWS) will be added in the coming weeks (Amazon S3, Amazon SNS, Amazon SQS). Furthermore, we are providing an early version of a Print Adapter and we are also working on an adapter providing WebSocket support using Atmosphere.How Can I Become a Contributor?If you have an idea regarding new extensions and/or adapters, please feel free to file a JIRA ticket. If you have already created an extension module and you want to contribute code, please fork the Spring Integration Extensions repository, add your module and issue a pull request. Before we can merge your code, though, you have to fill out the Contributor License Agreement. Once submitted, we and/or other community members will review your pull request and merge it. For much more detailed information, please take a closer look at the Contributor Guidelines for the Spring Integration Extensions project.Creating New Spring Integration Extension ModulesOne of the more popular extension types are Spring Integration Adapters. In order to simplify the process of writing custom adapters for Spring Integration, we now provide an Adapter Template for SpringSource Tool Suite (STS) 3.0.0. This template will make it very easy for contributors to build out new adapters quickly, while still ensuring consistency with those provided in the core Spring Integration framework (package structure, naming conventions, namespace handlers/parsers, etc).The Spring Integration Adapter Template, which is part of the Spring Integration Templates project, creates a fully functional Spring Integration Module, and the template will create the following commonly used components:Inbound Channel Adapter Outbound Channel Adapter Outbound GatewayThe template will not only create the core Java classes and some basic unit tests, but it will also provide XML Namespace support, which includes the XML Schema and the associated parser classes. Even if you create other types of components, this template should still give you valuable insights into how to develop those. For more information on using STS Templates for Spring Integration, please see the following blog posting:Creating Spring Integration Projects Using STS.The created adapter project will use Gradle as its build tool, and it closely follows the build tasks as defined for Spring Integration:Build the Adapter project$ ./gradlew buildInstall the Adapter project to your local Maven repository$ ./gradlew installGenerate the JavaDoc$ ./gradlew apiGenerate metrics using Sonar$ ./gradlew sonarBuild the complete distribution$ ./gradlew distFor more information please see How to Create New Components on the Spring Integration Extensions Wiki.Further ResourcesJIRA Forums Build Server MetricsSpring Integration GitHub RepositoriesFor completeness, here is a list of all Spring Integration relevant GitHub repositories:Spring Integration Spring Integration Extensions Spring Integration Samples Spring Integration Templates Spring Integration Dsl Groovy Spring Integration Dsl ScalaSpring集成团队自豪地宣布Spring集成扩展库的可用性。这个新的基于GitHub的存储库的主要目标是促进一个充满活力的适配器和扩展开发人员社区并鼓励社区中更广泛的部分为项目做出贡献。Spring集成扩展项目位于https://github.com/SpringSource/spring-integration-extensions网站这个新的存储库将为我们提供更快速地合并新贡献的灵活性而不必经过核心Spring集成框架更严格的审查过程。由于每个社区贡献的扩展都是Spring集成扩展库中的一个单独项目因此它将拥有自己的发布生命周期独立于管理核心Spring集成框架的发布生命周期。因此这将允许更频繁的发布。随着时间的推移我们预计一些使用较少的Spring集成模块可能会转换到扩展库中。另一方面对于一些扩展模块Spring集成扩展项目也可以充当孵化器从而最终将它们合并到核心Spring集成框架中。由于一些社区贡献新的存储库已经提供了几个适配器如XQuery适配器包括对XPath的支持2.0条)和SMB适配器。在未来几周内亚马逊网络服务AWS将增加几个适配器Amazon S3、Amazon SNS、Amazon SQS。此外我们正在提供打印适配器的早期版本并且我们还在使用Atmosphere开发提供WebSocket支持的适配器。

更多文章