我们有一个大型的多模块Maven项目。我一直在试验用-T选项加速我们的单元测试版本,并取得了一些积极的成果。不过,也有在我们的项目的一些依赖路径是这样的:Maven:在运行单元测试时忽略模块间依赖关系
模块A < - 模块B < - 模块C
,其中每个模块的单元测试需要20-30分钟。由于-T选项以其从属顺序构建模块,因此总共需要90分钟的构建时间。如果我可以先编译所有模块,然后同时运行A,B和C的测试,那么它确实会加快构建。例如。事情是这样的:
$ mvn -T 10 clean install -DskipTests
$ mvn -T 10 --ignore-dependencies test
问题:是否有Maven的这个开箱支持?
我一直在玩写作一个小脚本的想法,它将解析mvn依赖关系的输出:并且并行地调用“mvn test -pl A”,“mvn test -pl B”等等,但很显然,如果Maven有一个开箱即用的解决方案,那就更好了。
我们正在使用Jenkins,所以如果有Jenkins插件或Jenkins的功能,我错过了支持此功能的功能,那可能会有很大帮助!
注:加快对A,B和C单元测试将采取工作显著量,而且也不能保证单个模块内的测试并行
这确实是一个很好的解决方案,没有想到那个。 +1 – Tunaki
感谢您的解决方案 - 非常好! – choover