我有以下源布局:

.
├── pom.xml
├── modules (has pom)
│   ├── module1 (has pom) 
│   └── module2 (has pom)
│   └── moduleN (has pom)
└── webapp1 (has pom)
└── webapp2 (has pom)

WebApp1和WebApp2取决于所有模块(模块为DAO,服务等)。目前,我从根部构建了一切, mvn package 给我两个战争档案。

如何仅构建WebApp1或WebApp2?

如果我 cd 进入WebApp1并运行 mvn package 它说它不能下载modulex.jar(这是一个干净的存储库)。 Maven肯定应该能够推断出这些模块需要首先作为依赖项构建吗?

有帮助吗?

解决方案

如何仅构建WebApp1或WebApp2?

利用 “高级反应堆选项”. 。从根本上:

mvn install -pl webapp1 -am

这告诉Maven安装 webapp1 以及哪些项目 webapp1 取决于(按正确的顺序)。

帮助(mvn -h)这些命令是这样:

-pl, --projects
        Build specified reactor projects instead of all projects
-am, --also-make
        If project list is specified, also build projects required by the list

请注意,您需要调用 install, ,依赖关系始终通过本地存储库解决(因此您需要 install 他们)。 我错了,打电话 package 有效(我不知道如何/原因,但确实如此)。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top