2023-12-12 09:00:03

Maven跳过测试

我使用Maven 2.2.1和构建我的项目,我使用这个命令

mvn clean install -Dmaven.test.skip=true

然而,构建失败了,它无法找到其中一个工件。然而,当我使用:

mvn clean install -DskipTests

一切都很顺利。

到目前为止,我一直认为这两个命令是等价的。然而,这个链接似乎表明-Dmaven.test. test。Skip =true也跳过编译测试用例。

然而,这仍然没有向我解释为什么一个命令是有效的,而另一个没有。如果有人能给我解释一下,我将不胜感激。


当前回答

我为Intellij用户提供了另一种方法,它对我来说非常有效:

点击“跳过测试”按钮

按住“CTRL”键 选择“清洁”和“安装”

单击maven面板中的“Run”按钮

其他回答

要获得最快的构建,请跳过编译测试文件和运行测试:

mvn install -Dmaven.test.skip -DskipTests

来自Maven Surefire插件文档:

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

mvn install -dskipTests

如果必须,也可以使用maven.test.skip属性跳过编译测试。maven.test.skip是由Surefire, Failsafe和编译器插件。

mvn install -Dmaven.test.skip=true

在“如何让maven构建更快?”这个问题的答案中,可以找到更多加速安装的方法。

为了构建包,我与测试有一些相互依赖性。

为了完成目标,下面的命令可以覆盖对测试工件的需求:

mvn -DskipTests=true  package

你也可以使用下面的命令:-

mvn clean install -Dmaven.test.skip=true

每个参数之间都有区别。

dskiptests跳过运行测试阶段,这意味着在这个过程结束时,您将编译您的测试。 -Dmaven.test。跳过=true跳过编译和运行测试阶段。

作为参数-Dmaven.test。跳过=true跳过编译你没有测试工件。

有关更多信息,请阅读surfire文档:http://maven.apache.org/plugins-archives/maven-surefire-plugin-2.12.4/examples/skipping-test.html

使用Maven的最新版本

给出命令位变化的方式。

下面的命令将工作得很好

mvn clean install "-Dmaven.test.skip=true"

我为Intellij用户提供了另一种方法,它对我来说非常有效:

点击“跳过测试”按钮

按住“CTRL”键 选择“清洁”和“安装”

单击maven面板中的“Run”按钮