128 Maven中有没有一种方法可以在不运行测试的情况下进行编译?我想使用IDE来运行特定的测试,而不是全部。 maven — 用户名 source 8 您可能应该编辑问题或更改接受的答案。 — Chiranjib
29 你可以尝试使用参数 -DskipTests 参考文献: Maven Surefire插件#skipTests — well source 在netbeans中,这就是我正在做的。我看到以下mvn -Dmaven.test.skip = true -Dnetbeans.execution = true全新安装,然后我看到以下内容 — user373201 2011年 [compiler:testCompile]不编译测试源[surefire:test]测试被跳过。使用netbeans的 — Atleast 1 没关系,即使日志说了这一点,它似乎仍然可以编译测试文件。 — user373201 2011年 34 这导致完全跳过测试:执行和编译,请参见下面的正确答案:test-compile。我在Eclipse中将它与mvn clean compile test-compile一起使用 — Yashima 2012年 3 @Yashima你说得对这个aswer也不是那么聪明......请接受答案波纹管,所以可以删除这一个 — lweller
334 test-compile生命周期阶段如何?它不需要任何测试跳过,因为它发生在test阶段之前。即 $ mvn test-compile 并做了。 构建生命周期简介进一步说明。 — 罗尼 source 7 正是我需要的,谢谢。我不知道原始的询问者;但我当时想编译测试,然后使用单独的测试运行器运行它们。 — Mike Miller
30 要仅编译测试和代码而不运行它们,只需执行以下操作: mvn test-compile — 橙色77 source 7 我认为测试编译包括编译 — 异想天开 同意@Whimusical。而且这将运行编译目标2次。 — 加布里埃尔·彼得罗维
26 在执行将包括测试阶段(例如包装)的目标时,您可以做两件事: 使用命令mvn -DskipTests=true package。这将编译所有测试,但不会运行它们。 或者mvn -Dmaven.test.skip=true package。这不会编译或运行测试分支。 — 马丁斯 source
3 或者,您可以使用maven.test.skip.exec选项。 mvn -Dmaven.test.skip.exec=true Maven将编译测试而不运行它们。我会在所有项目中定期使用此选项。 — 史蒂芬 source
1 如果您真的只想编译测试(跳过所有其他阶段,如compile),则可以 mvn org.apache.maven.plugins:maven-compiler-plugin:3.1:testCompile 请参阅默认生命周期的插件绑定。 — 施纳特 source
0 如果您使用settings.xml文件,也可以使用 <maven.test.skip>true</maven.test.skip> — Menapole source 5 你绝对不应该那样做。如果需要,请在命令行上进行设置,但不要永久设置。 — 肖恩·帕特里克·弗洛伊德 13 从来没有说过您应该或不应该这样做。仅提供有关选项的知识。 — menapole 2011年 4 这也导致Maven也不编译测试。 — Mike Miller 3 @Sean Patrick Floyd:为什么不呢?这不是永久的,而是要在pom.xml中进行设置。 — 巴拉兹内梅特