maven打包时有test单元测试的项目一直执行项目问题
Posted 敲代码的小小酥
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了maven打包时有test单元测试的项目一直执行项目问题相关的知识,希望对你有一定的参考价值。
问题出现
在一次SpringBoot项目打包时,当执行package命令时,直接启动项目,开始运行了,而没有进行打包操作。控制台显示是走了test里的@Test单元测试,启动了项目,导致项目一直运行,而没有打包。把启动类删除之后,再执行package命令,就可以正常打包了。
问题解决
当时不知道原因,所以就把单元测试类删除了,进行的打包。今天偶然的看到了这个问题的解决方案。
在使用mvn package进行编译、打包时,Maven会执行src/test/java中的JUnit测试用例,有时为了跳过测试,会使用参数-DskipTests和-Dmaven.test.skip=true,这两个参数的主要区别是:
-DskipTests,不执行测试用例,但编译测试用例类生成相应的class文件至target/test-classes下。
-Dmaven.test.skip=true,不执行测试用例,也不编译测试用例类。
因为我的项目是SpringBoot项目,在做单元测试时,要加载启动类的,所以maven在打包的同时就执行启动类了,导致项目开始运行。加上上面的两个参数再打包,就可以解决了。
以上是关于maven打包时有test单元测试的项目一直执行项目问题的主要内容,如果未能解决你的问题,请参考以下文章