使用 Maven 构建 Java 项目时,通常有以下两种方式,可以在打包编译时跳过项目中的测试部分代码。

-Dmaven.test.skip=true

在 Maven 的命令中,使用参数 -Dmaven.test.skip=true 来跳过单元测试代码:

1
mvn clean package -Dmaven.test.skip=true

-DskipTests

在 Maven 的命令中,使用参数 -DskipTests 来跳过单元测试代码:

1
mvn clean package -DskipTests

使用 -Dmaven.test.skip=true 还是 -DskipTests

使用 -Dmaven.test.skip=true 参数进行打包编译时,Maven 会完全忽略单元测试代码,既不执行测试用例类,也不编译测试用例类。

而使用 -DskipTests 参数进行打包编译,Maven 会编译测试部分的类,生成相应的 class 文件到 target/test-classes 目录下,但不会执行测试类。

一般没有特殊要求的情况,测试类最好还是进行编译。因此推荐使用 -DskipTests 参数。

(END)