Maven-如何在不运行测试的情况下编译测试?

Maven 中有没有不运行测试而编译测试的方法?我想使用 IDE 来运行特定的测试,而不是所有的测试。

103309 次浏览

您可以尝试使用参数 -DskipTests

参考文献:

如果您使用 setings.xml 文件,还可以使用

<maven.test.skip>true</maven.test.skip>

test-compile生命周期阶段如何? 它不需要跳过任何测试,因为它发生在 test阶段之前,

$ mvn test-compile

搞定。

构建生命周期 简介进一步解释。

当执行一个包含测试阶段(比如包)的目标时,您可以做两件事:

  • 使用命令 mvn -DskipTests=true package 测试,但不运行它们。
  • 这将不会编译或运行测试分支。

如果你真的想要 只编译测试(跳过所有其他阶段,如 compile) ,这将做

mvn org.apache.maven.plugins:maven-compiler-plugin:3.1:testCompile

看看 默认生命周期的插件绑定

或者,您可以使用 maven.test.skip.exec选项。

mvn -Dmaven.test.skip.exec=true

Maven 将在不运行测试的情况下编译测试。 我经常在我所有的项目中使用这个选项。

只编译测试和代码,而不运行它们,只需要:

mvn test-compile