在此命令期间到底发生了什么:
mvn -pl ABC –am -amd?
是否编译代码?
我问的原因是我故意放了一个无效的文件,当我运行mvn -pl ABC -am -amd
选项时,我得到了成功的结果,我很困惑为什么Maven没有抱怨错误的文件?
但如果我使用mvn install
命令就会出错!
答案 0 :(得分:34)
-pl
或--projects
允许您选择一组特定项目来应用您的目标(例如clean install
),从而节省您等待完整构建所花费的时间如果你只是需要构建一些模块,这是一个大项目。
您可能想在Maven reference上查看此内容。
答案 1 :(得分:3)
如果你说mvn -pl,并且不给-pl提供任何参数,那么你就要求maven什么也不做。
-pl假设您正坐在具有多个模块的项目中,并且想要构建子集。你刚刚要求空子集。
答案 2 :(得分:1)
-pl:使maven仅构建指定的模块,而不构建整个项目(在这种情况下,它仅是ABC)。
-am:使maven找出目标模块所依赖的模块并进行构建(在这种情况下,这是ABC的依赖性)。
答案 3 :(得分:-4)
你实际上没有给它一个目标来运行。 mvn -pl Abc:Xyz -am -amd
有两个问题
首先,-amd
隐含-am
,因此您不需要两者
其次,你没有给它一个运行的目标,比如安装,打包,测试或编译。