“-Dmaven.test.skip.exec”与“-Dmaven.test.skip=true”和“-DskipTests”有啥区别?

Posted

技术标签:

【中文标题】“-Dmaven.test.skip.exec”与“-Dmaven.test.skip=true”和“-DskipTests”有啥区别?【英文标题】:What is the difference between "-Dmaven.test.skip.exec" vs "-Dmaven.test.skip=true" and "-DskipTests"?“-Dmaven.test.skip.exec”与“-Dmaven.test.skip=true”和“-DskipTests”有什么区别? 【发布时间】:2014-03-22 22:27:52 【问题描述】:

我不确定 maven 指令 -Dmaven.test.skip.exec-Dmaven.test.skip=true -DskipTests 之间的区别是什么。两者似乎都抑制了测试周期。

【问题讨论】:

可能重复:***.com/questions/8685100/… 不是这个问题的傻瓜,更多的是“我尝试了所有这些,但它们都不起作用”...... :) 【参考方案1】:

"maven.test.skip.exec=true" 测试被编译,但没有被执行。

maven.test.skip=true”不编译或执行测试。

"-DskipTests" 是 same 作为 "maven.test.skip.exec=true"

【讨论】:

【参考方案2】:

请看参考: http://maven.apache.org/surefire/maven-surefire-plugin/examples/skipping-test.html

提取:

跳过测试

要跳过运行特定项目的测试,请设置 skipTests 属性为 true。

<project>
  [...]
  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>2.18.1</version>
        <configuration>
          <skipTests>true</skipTests>
        </configuration>
      </plugin>
    </plugins>
  </build>
  [...]
</project>

您也可以通过命令行执行跳过测试 以下命令:

mvn install -DskipTests

如果你绝对必须,你也可以使用 maven.test.skip 属性 跳过编译测试。 maven.test.skip 被 Surefire 授予荣誉, Failsafe 和编译器插件。

mvn install -Dmaven.test.skip=true

【讨论】:

【参考方案3】:

system property-Dmaven.test.skip=true 将执行以下操作:

因为 maven.test.skip 禁用了运行测试和编译 测试。

系统属性 -Dmaven.test.skip.exec 已弃用,您应该使用 -DskipTests=true

将此设置为“true”以跳过正在运行的测试,但仍会编译它们。

【讨论】:

以上是关于“-Dmaven.test.skip.exec”与“-Dmaven.test.skip=true”和“-DskipTests”有啥区别?的主要内容,如果未能解决你的问题,请参考以下文章

python网络编程基础(线程与进程并行与并发同步与异步)

=与==&与&&| 与 || 的区别

与 0 进行比较与与某个值进行比较是不是更快?

三.工具与市场-债券与债务股票与公司

RESTfulREST 与 RESTful 理解与实践

RESTfulREST 与 RESTful 理解与实践