Maven替代pom

问题描述 投票:44回答:3

调用maven构建以指定替代文件代替标准pom.xml文件名时是否有参数?

基本上,我需要使用各种配置来运行我的Maven构建的test目标。现在,我必须使用外部脚本来使用此配置更新标准pom,然后再还原文件。我宁愿能够维护几个单独的配置文件,并用我需要的特定文件调用maven。

我想知道的是是否有某种方法可以覆盖pom.xml,例如

mvn clean test   (uses standard pom.xml)
mvn clean test -Dmaven.source=alternate.xml
mvn clean test -Dmaven.source=alternate2.xml

这可能吗?

maven pom.xml
3个回答
95
投票

使用-f选项:

mvn -f <other pom file>

8
投票

我将仅保留接受的答案,因为这是使用备用pom文件运行的正确解决方案。但是,对于我上面描述的用例,我现在认为正确的方法是在pom文件中使用Maven配置文件。

Maven Profiles Introduction

使用配置文件,测试配置的所有版本都可以包含在主pom文件中,然后按以下步骤执行:

mvn clean test -PstandardConfig
mvn clean test -PalternateConfig
mvn clean test -PanotherConfig

0
投票

当我得到最终答案时,我发现了这个非常有趣的解决方案。我遵循以下方法:-

mvn -f yourPomfil.xml目标

目标可以清理,验证,打包,安装,部署和其他Maven目标

© www.soinside.com 2019 - 2024. All rights reserved.