我有一个有三个模块级别的项目。假设它有以下的组织..。
+-- maven-root
+-- maven-module-1
| +-- maven-submodule-1-1
| +-- maven-submodule-1-2
+-- maven-module-2
| +-- maven-submodule-2-1
| +-- maven-submodule-2-2
+-- maven-module-3
+-- maven-submodule-3-1
+-- maven-submodule-3-2此外,我们还有以下一组依赖项
maven-module-2依赖于maven-module-1maven-module-3依赖于maven-module-3在这种结构中,假设maven-module-1及其子模块的工件已经在本地存储库中可用,是否有一种使用maven反应器(例如)构建maven-module-2及其子模块的解决方案?
我已经知道了,使用maven反应堆,如果我知道
mvn clean install -pl :maven-module-2 --also-make-dependant它将建造
因为maven-module-3依赖于maven-module-2
很明显,跑步
mvn clean install -pl :maven-module-2 --also-make将只构建maven-module-1和maven-module-2。
那么,如何使用该项目组织,我可以只构建maven-module-2?
发布于 2013-01-09 17:55:54
使用
mvn clean install -f maven-module-2 -N将只构建maven-模块-2和
mvn clean install -f maven-module-2将构建maven- and 2及其子模块。
注意,-f被用来告诉Maven使用另一个POM (或模块目录,其中包含pom.xml ),而不是当前目录中的那个。因此,与-pl不同的是,maven考虑了项目中的所有模块,然后只构建了其中的一个子部分,-f只构建了该项目/模块/pom引用的内容。去做
mvn clean install -f maven-module-2就像
cd maven-module-2; mvn clean installhttps://stackoverflow.com/questions/14212920
复制相似问题