Maven 如何以原子方式运行mvn测试(无需重建源代码)?

Maven 如何以原子方式运行mvn测试(无需重建源代码)?,maven,testing,lifecycle,Maven,Testing,Lifecycle,我想运行一个maven项目生命周期,从单元测试开始到结束 如何跳过依赖项的重新编译和重新解析而只运行测试阶段?,或者使用Maven以外的工具(Ant、Gradle、IDE、命令行JUnit runner等)运行测试。这就是您在使用Maven时所面临的限制。如果您通过调用一个阶段来启动Maven,它将执行所有生命周期阶段,直到您调用的阶段为止。比如打电话的时候 mvn test 测试生命周期阶段之前的所有阶段也将被执行:项目将被验证,源和资源将被生成和处理,源将被编译,测试源和资源也将被编译,最

我想运行一个maven项目生命周期,从单元测试开始到结束


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

,或者使用Maven以外的工具(Ant、Gradle、IDE、命令行JUnit runner等)运行测试。这就是您在使用Maven时所面临的限制。

如果您通过调用一个阶段来启动Maven,它将执行所有生命周期阶段,直到您调用的阶段为止。比如打电话的时候

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

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

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

您可以运行:

mvn surefire:test

Ryan,这是绝对可能的,请看其他答案。@SamuelEUSTACHI:是和否。我确实应该考虑明确提到运行surefire插件,但问题是如何运行只包含测试阶段的maven生命周期,而不是那样。实际上Ryan,问题明确提到了生命周期,所以你的回答没有错。但它可能会把jayunit100引向一个复杂的方向。我试图在基本使用场景中翻译这个问题,因为只有一个阶段的生命周期会有点过分。