我怎样才能得到maven-release-plugin跳过我的testing?

我怎样才能让maven-release-plugin在不触发testing的情况下运行?

我努力了

-Dmaven.test.skip=true 

 -DskipTests 

 -DpreparationGoals=clean 

…还没有工作。

是的,我知道如果testing不通过,我不应该放弃,但是我不能控制让我的同事写出可靠的testing。

-Darguments="-DskipTests"是你想要的,或者明确地configuration在POM分叉执行。

-Darguments="..."将parameter passing给分叉的maven进程,但是认识到这里使用了两个不同的开关是很重要的。 -DskipTests强制Maven不运行任何testing,但是testing仍然被编译(如果你对testingjartypes有任何依赖关系,这是很重要的)。 -Dmaven.test.skip=true强制maven甚至不编译testing,这意味着任何testingjar都不会生成。

所以,你必须使用-Darguments ,但是要跳过只运行skipTeststesting,要停止编译使用maven.test.skip

如果你只是想跳过集成testing,这将做到这一点:

 -Darguments="-DskipITs" 

为了跳过整个unit testing,它使用参数

-Dmaven.test.skip =真

所以如果你想跳过unit testing这将解决

 mvn install -Dmaven.test.skip=true mvn package -Dmaven.test.skip=true 

或者你也可以在maven-surefire-plugin中定义skipTests

的pom.xml

 <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>2.12.4</version> <configuration> <skipTests>true</skipTests> </configuration> </plugin>