gpt4 book ai didi

java - 如何默认排除特定测试,但在激活某个配置文件时包含它们?

转载 作者:行者123 更新时间:2023-12-01 04:37:41 25 4
gpt4 key购买 nike

现在我知道如果我使用

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<excludes>
<exclude>**/Benchmark*.java</exclude>
</excludes>
</configuration>
</plugin>

我将能够跳过我不想运行的测试。但是,我想要一个特定的配置文件,如果我使用该特定配置文件进行构建,则上述排除的测试将运行。我已经尝试过

<profiles>
<profile>
<id>benchmark</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<includes>
<include>**/Test*.java</include>
<include>**/*Test.java</include>
<include>**/*TestCase.java</include>
</includes>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>

与上面的方法一样,但似乎不起作用。

最佳答案

Maven 会将您的配置合并在一起,而不是像您期望的那样进行覆盖,因此配置文件处于 Activity 状态的最终配置将如下所示:

<configuration>
<includes>
<include>**/Test*.java</include>
<include>**/*Test.java</include>
<include>**/*TestCase.java</include>
</includes>
<excludes>
<exclude>**/Benchmark*.java</exclude>
</excludes>
</configuration>

不需要所有这些默认值 <include> s。他们是already there anyway 。只需输入 <excludes/>告诉 Maven 您要停止执行在基本 POM 中指定的排除操作。即,在您的个人资料中,只需说:

<configuration>
<excludes/>
</configuration>

关于java - 如何默认排除特定测试,但在激活某个配置文件时包含它们?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17100595/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com