简而言之,我想做的是一次构建一堆库和应用程序,所有 Maven 项目。据我了解,仅在一个命令行运行中完成此操作的一种方法mvn package
是创建一个多模块项目,该项目将列出我想要构建的每个模块,将它们放入 Maven 反应器中,然后构建。
按照 Maven 书中的示例,通常多模块似乎pom
位于各个模块上方的目录中。但是,通常情况下,父pom
级位于模块上方的目录中,这引发了一个问题,通常情况下,多模块构建也应该是父级吗?我想不是; 但是我想知道为什么我会遇到这个有趣的设计怪癖。
所以,我想知道设置它的正确方法。我看到以下约定/要求:
- 多
pom
模块必须知道其他模块在磁盘上的位置。由于它实际上是从源代码构建它不能简单地依赖已安装的版本(因为它正在安装它们!) - 父级实际上不必是物理目录,尽管这样会更好。我认为这是最好打破的惯例。
- 实际上,各个库/应用程序甚至不需要知道它们是作为多模块构建的一部分构建的。
这通常如何在多模块构建中设置?有没有更简单的方法来一次管理构建多个 Maven 项目?