Maven:将共享模块构建为其他模块的依赖项,以便可以单独构建

Maven: Build shared Module as Dependency for other Modules so the can be build separately

我有一个包含多个模块(微服务模块)的多项目,这些模块具有相同的代码库等持久层。我想将其提取到一个单独的模块(共享模块)中。

结构如下:

Main Pom
  |- Microservice 1
  | |- module 1
  | |- module 2
  |- Microservice 2
  | |- module 1
  | |- module 2
  |- Microservice 3
  | |- module 1
  |- Shared Module

我知道我可以将 "Shared Module" 添加为 "Microservice Modules" 的依赖项,但我只能通过从主 pom 构建 hole 项目。

但我想单独构建微服务模块。是否可以在仅构建一个微服务模块之前构建共享模块。

您应该将共享模块添加为其他模块的依赖项。

然后,在主 pom 中添加一个 <modules> 部分(如果尚不存在)并列出所有模块。

然后,您可以通过以下操作仅从主 pom 构建共享模块:

mvn install -pl :shared-module

或者您可以通过以下方式构建所有模块:

mvn install

或者您可以通过以下方式仅构建模块 1 和这些依赖项(即 shared-module):

mvn install -pl :module1 -am

或者您也可以列出您要手动构建的所有项目:

mvn install -pl :shared-module,:module1