最近在公司的一个项目里用到了maven的多模块,由于项目比较大,每次修改后构建整个工程耗时太久,需要单独构建某个模块,mvn有支持的选项:
-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
同时构建所列模块的依赖模块,比如A依赖B,B依赖C,构建B,同时构建C
-amd, --also-make-dependents
If project list is specified, also build projects that depend on projects on the list
同时构建依赖于所列模块的模块,比如A依赖B,B依赖C,构建B,同时构建A
首先切换到工程的根目录(父项目):
单独构建模块 pingjuan-web,同时会构建 pingjuan-web 模块依赖的其他模块
$ mvn install -pl pingjuan-web -am
单独构建模块 pingjuan-common,同时构建依赖于模块 pingjuan-common 的其他模块
$ mvn install -pl pingjuan-common -am -amd
补充,如果在eclipse中执行:
右键跟路径(父项目) -> Run as -> Maven build…
在Goals中输入:
install -pl pingjuan-common -am -amd
Run即可