**本文正在参加「Java主题月 – Java Debug笔记活动」,详情查看 活动链接 **
问题:
我正在尝试打包我的项目。但是,它会在打包前自动运行的测试。这个测试会向数据库插入数据。这不是我想要的,我需要避免在打包应用程序时运行测试。有人知道如何在打包前不自动测试吗?
——————————以下为回答,按支持票数排序———————————-
回答1(支持票数411):
执行maven命令:mvn package -Dmaven.test.skip=true
回答2(支持票数200):
只需要使用下面提供的命令,就可以不执行测试(当仍会编译测试代码):
mvn package -DskipTests
回答3(支持票数52):
如果您不想设置命令行参数,可以将此插件配置添加到pom中:
js<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<skipTests>true</skipTests>
</configuration>
</plugin>
复制代码
回答4(支持票45):
请注意,-Dmaven.test.skip
会阻止Maven构建test-jar artifact。
如果您想跳过测试,除非按照常规构建方式创建artifacts,请使用:
-Dmaven.test.skip.exec
回答5(支持票36):
如果你尝试在Windows Powershell 上执行mvn package -Dmaven.test.skip=true
,将会报如下错误:
[ERROR] Unknown lifecycle phase ".test.skip=true". You must specify a valid lifecycle phase or a goal in the format...
复制代码
原因是,在Powershell中 “-
” 有特殊的含义,这样会导致maven报错,解决方式是在命令前加一个”`”符号,如下所示:
mvn \`-Dmaven.test.skip=true install
复制代码
引用: kuniganotas.wordpress.com/2011/08/12/…
回答6(支持票28):
<properties>
<maven.test.skip>true</maven.test.skip>
</properties>
复制代码
也是向pom文件中添加配置
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END