这篇文章将介绍如何使用EclipseVert.x设计和开发一个基于消息驱动的响应式持续集成(CI)系统。我们将利用Java平台模块系统(JPMS)来构建一个由多个模块组成的应用程序,模块之间通过定义好的接口进行通信。有了JPMS,架构师和开发者就可以使用模块来重构大型的遗留系统,或者用它们来创建新的应用程序。不过,要在模块系统中使用已有的Java类库并不是件容易的事。因此,我们也会探讨在使用JPMS过程中可能遇到的各种问题,以及如何解决这些问题。先让我们来定义这个CI系统的最小可用产品(MVP),我们将把它构建成Docker原生系统。这个系统需要提供如下特性,并通过RESTAPI暴露出来: