“-Dmaven.test.skip.exec”与“-Dmaven.test.skip = true”之间的区别是什么?

时间:2014-02-21 11:58:53

标签: maven

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

3 个答案:

答案 0 :(得分:20)

“maven.test.skip.exec = true”测试已编译,但未执行。

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

答案 1 :(得分:14)

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

  

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

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

  

将其设置为“true”以跳过运行测试,但仍然可以编译它们。

答案 2 :(得分:3)

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

提取:

  

跳过测试

     

要跳过运行特定项目的测试,请设置skipTests   财产到真。

<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的尊敬,   故障安全和编译器插件。

mvn install -Dmaven.test.skip=true