如何在 Maven 构建中永久排除一个测试类

2023-11-27

我试图从我的 Maven 构建中排除单个测试(我不希望编译或执行该测试)。以下不起作用:

<project ...>
  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
          <excludes>
            <exclude>**/MyTest.java</exclude>
          </excludes>
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>

实现我的目标的正确方法是什么?我知道我可以使用命令行选项-Dmaven.test.skip=true,但我希望这成为pom.xml.


跳过测试

来自docs,如果你想跳过测试,你可以使用:

<project>
  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>2.17</version>
        <configuration>
          <excludes>
            <exclude>**/MyTest.java</exclude>
          </excludes>
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>

看看差异,在您的示例中,您使用<artifactId>maven-compiler-plugin</artifactId>,医生说你应该使用<artifactId>maven-surefire-plugin</artifactId>插件代替。

而且,如果您想禁用所有测试,您可以使用:

    <configuration>
      <skipTests>true</skipTests>
    </configuration>

另外,如果您正在使用JUnit, 您可以使用@Ignore,并添加一条消息。

从编译中排除测试

From this回答,可以用。诀窍是拦截<id>default-testCompile</id> <phase>test-compile</phase>(默认测试编译阶段)并排除该类:

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-compiler-plugin</artifactId>
  <executions>
    <execution>
      <id>default-testCompile</id>
      <phase>test-compile</phase>
      <configuration>
        <testExcludes>
          <exclude>**/MyTest.java</exclude>
        </testExcludes>
      </configuration> 
      <goals>
        <goal>testCompile</goal>
      </goals>
    </execution>                  
  </executions>
</plugin>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Maven 构建中永久排除一个测试类 的相关文章

随机推荐

  • 对 python 数组中的日期进行排序

    如何在 python 2 4 上对以下日期数组进行排序 timestamps 2011 06 2 2011 08 05 2011 02 04 2010 1 14 2010 12 13 2010 1 12 2010 2 11 2010 2 0
  • Python中负股息的模[重复]

    这个问题在这里已经有答案了 一直在寻找其他答案 我仍然不明白 python 中负数的模数 例如 df 的回答 x x y y x y 所以 2 5 2 2 5 5 3 是有道理的 这不是 2 2 5 5 0 还是我疯了 具有负值的模运算 奇
  • AWS批处理-如何限制并发作业的数量

    我正在寻找一种方法 通过保留队列中的剩余作业来限制正在运行的批处理作业的数量 aws批处理可以吗 限制最大vcpu数量队列所绑定的托管计算环境的数量将有效限制在该队列上同时运行的批处理作业的数量 但是 需要注意的是 如果您有其他队列共享此计
  • 对象与 DesignData 中的目标类型不匹配

    我将把它扔掉 以防有人以前遇到过这种情况 创建在 WPF 设计器中使用的 DesignData 时 出现以下两个错误之一 对象与目标类型不匹配 在 System Reflection RuntimeMethodInfo CheckConsi
  • jQuery $.ajax,错误处理程序不起作用

    您好 我注意到这个简单的代码无法按预期的方式工作 function test ajax url test GameConfiguration json dataType json data a aaa cache false method
  • 在android中比较两个声音

    我正在开发一个语音消息应用程序 我需要比较两个语音 例如 通过录制您的声音注册应用程序 已发送语音消息至 另一个用户通过录制语音 但首先需要比较这个语音 到配置文件中录制的声音 出于安全目的 需要知道录制的消息是否来自特定用户 我试过 在
  • PHP_AUTH_USER 未设置?

    由于某种原因 其中没有任何代码 if isset SERVER PHP AUTH USER isset SERVER PHP AUTH PW When the above is set the code that is here will
  • 当域规则无效时,put 方法上的其余服务的 http 响应代码是什么

    当使用 PUT 方法更新资源 并且请求包含一些会使域规则无效的数据时 返回的最合适的响应代码是什么 例如 客户资源必须具有name指定的 如果代理尝试在不提供 PUT 的情况下发出 PUTname我不想更新资源 我想告诉调用者他们需要提供一
  • Cassandra如何选择发送请求的节点?

    想象一下 Cassandra 集群需要由客户端应用程序访问 在Java api中 我们创建一个集群实例并通过会话发送读取或写入请求 如果我们使用读 写一致性 ONE API 如何选择实际节点 协调节点 来转发请求 是随机选择的吗 请帮忙解决
  • C 内联函数和“未定义的外部”错误

    我试图用内联函数替换一些宏子例程 以便编译器可以优化它们 以便调试器可以单步执行它们 等等 如果我将它们定义为普通函数 它就可以工作 void do something void blah void main void do somethi
  • 如何创建具有多个键的 NSDictionary?

    我不确定我要问的是否真的是NSDictionary有多个键但是还可以 我想做的是创建一个NSDictionary包含我的数据的键和值 然后将其转换为JSON格式 这JSON格式看起来就像这样 eventData eventDate Jun
  • TF900547:包含 Visual Studio 测试运行程序集的目录无效,但看不到 MSTest.exe

    我在 TFS2013 构建上收到以下错误 TF900547 The directory containing the assemblies for the Visual Studio Test Runner is not valid Loo
  • 如何使日期与区域设置无关?

    我有一个数据库 将日期存储在OleDateTime格式 采用 GMT 时区 我已经实现了一个类 扩展Date在java中以经典日期格式表示 但我的课程取决于区域设置 我在 GMT 2 因此 它将数据库中的日期转换为date 2 hours
  • dateWithTimeIntervalSince1970 未返回正确的日期

    我下面有以下方法 旨在从 API 调用中检索 unixTimeStamp 并将其转换为我可以轻松操作和使用的 NSDate 对象 由于某种原因 这会返回错误的值 例如 当 unixTimeStamp 为 1385152832 时 日期应该为
  • 如何动态调整 HTML5 中的视频大小?

    我们的项目要求在一个 html 页面中有 3 个视频 如下图所示 现在 通过单击每个视频的右下角 用户可以调整视频的大小 其他视频的大小也会相应改变 我在这里面临的问题是如何通过按住并拖动鼠标单击每个视频的右下角来调整视频大小 我尝试过使用
  • Pandas DataFrame 中计数的数据透视表

    我有一个熊猫数据框 Col X Col Y class 1 cat 1 class 2 cat 1 class 3 cat 2 class 2 cat 3 我想转变成 cat 1 cat 2 cat 3 class 1 1 0 0 clas
  • 设备与模拟器语言方案

    有谁明白吗why这正在发生吗 在任何模拟器上 所有方案都可以通过以下代码找到 NSArray
  • Electron 中的自定义错误窗口/处理

    我目前正在构建一个用于文件备份的应用程序 它对文件系统进行了大量的读写操作 大部分功能都很好 但我在应用程序的错误处理方面遇到了一些困难 在下面的屏幕截图中 最后一个路径不是有效的目录 并返回异常 如您所见 function getTota
  • Visual Studio:检测不需要的程序集

    在较大和 或长期运行的项目中 我倾向于引用许多程序集和命名空间 并且通常最终会在稍后删除某些功能或将其移动到不同的项目中 我只是想知道 有没有一种方法可以检查整个 Visual Studio 解决方案中的每个项目 哎呀 每个 cs 文件 并
  • 如何在 Maven 构建中永久排除一个测试类

    我试图从我的 Maven 构建中排除单个测试 我不希望编译或执行该测试 以下不起作用