44

我想以单元测试开始和结束运行一个 Maven 项目生命周期。

如何跳过重新编译和重新解析依赖项而只运行测试阶段?

4

3 回答 3

59

如果您通过调用一个阶段来启动 Maven,它将执行所有生命周期阶段,直到您调用的那个阶段。例如,当调用

mvn test

测试生命周期阶段之前的所有阶段也将执行:项目将被验证,源和资源将生成和处理,源将被编译,测试源和资源也会发生同样的情况,最后将运行单元测试。

但是您也可以调用绑定到生命周期阶段的插件目标。在测试阶段的情况下,绑定目标是surefire的测试魔力。所以你可以打电话

mvn surefire:test

并且不会执行其他生命周期阶段。您可以在此处根据包类型找到绑定到每个阶段的目标。

于 2013-02-14T14:31:21.007 回答
12

您可以运行:

mvn surefire:test
于 2013-02-14T14:35:21.993 回答
1

构建你自己的生命周期,或者使用 Maven 之外的东西运行测试(Ant、Gradle、你的 IDE、命令行 JUnit 运行器,...)。这就是您在使用 Maven 时所承受的那种限制。

于 2013-02-14T02:59:33.283 回答