据称,您可以在命令行上排除模块,例如通过运行类似的命令
mvn clean install -pl \!modulename
这似乎不起作用(不再)。
顺便说一句,包含模块也不起作用
mvn clean install -pl modulename
Maven reactor 将找不到模块并失败。
[ERROR] Could not find the selected project in the reactor: modulename -> [Help 1]
模块
modulename然而确实存在。在进行普通构建时,Reactor 将在构建模块列表中生成其名称。
[INFO] modulename
有没有办法在命令行上排除模块?如果可能的话,我不想更改 pom 文件。
请您参考如下方法:
假设在您的父 pom.xml 中,您的模块结构是这样的:
然后,如果我想排除模块“core”和“app1”,命令将是:
mvn -pl '!core,!app1' clean install
所以带有 -pl 标志的最终结果是:
笔记:
放置来自父 pom.xml 的模块名称(如上),而不是
<name>在子模块中。
将 -pl 标志放在“全新安装”之前。
此外,分隔模块名称的每个逗号之间不应有空格。
这是没有设置 -pl 标志的构建的样子:




