.m2 / settings.xml中对maven surefire插件的全局更改

时间:2017-05-09 09:38:02

标签: java maven build pom.xml

我想更改maven-surefire-plugin的默认设置,而不是使用<reportFormat>brief</reportFormat>,我想使用<reportFormat>plain</reportFormat>

通常,我会通过修改项目的个人pom来实现此目的,例如:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-surefire-plugin</artifactId>
    <configuration>
        <redirectTestOutputToFile>true</redirectTestOutputToFile>
        <reportFormat>plain</reportFormat>
    </configuration>
</plugin>

但是,是否可以以某种方式修改~/.m2/settings.xml文件并将<reportFormat>plain</reportFormat>设置为我要编译的所有maven项目的默认行为。 我对许多maven项目进行了分析,因此我宁愿在全局级别更改行为,而不是修改每个项目的pom文件。

1 个答案:

答案 0 :(得分:1)

settings.xml配置文件在此详细程度下不会失效。插件配置只能在pom.xml中指定 检查它的最佳方法是研究settings.xml架构:

https://maven.apache.org/xsd/settings-1.0.0.xsd

您可以看到引用&#34;插件的单个元素&#34; word与构建中的插件配置无关。

对于您的要求,单个解决方案如果使用不好也有其缺点是使用定义插件配置的父pom,并且所有Maven模块应该具有作为父级继承插件配置以及可能来自其他东西。< BR />

如果您的应用程序项目使用多模块/父pom结构,我认为更好的解决方案是在每个多模块/父pom的父pom中声明此配置。 通过这种方式,您可以通过一组相关项目多次声明它,但只需一次。