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