我有一个多模块 java 项目。 Maven 大约需要 40 秒来构建它。我也尝试过使用多线程构建的 Maven,方法是指定 -T 和 -C args 来表示没有要使用的线程和内核。但是我没有看到我的构建的挂墙时间有任何显着改善。
我正在使用 maven 3.2.3,有时我需要非常频繁地构建我的项目。
我知道干净的目标需要很多时间,但我不能忽略它。
请提出建议….
编辑:
注意:在我的例子中,clean 不会花费太多时间。它在 1 秒内完成。安装正在占用剩余时间。
原文由 Shubham Chaurasia 发布,翻译遵循 CC BY-SA 4.0 许可协议
注意:首先是 AFAIK,除了此处的所有答案外,maven 中没有其他可用的内置选项。
使用多线程运行 maven build 对我来说可以加快构建速度。例如 :
以下是来自 wiki 的变体
如何评估执行( 请参阅 Maven 3 中的并行构建)?
图中的每个节点代表多模块构建中的一个模块,“级别”仅表示到内部反应器依赖关系图中第一个模块的距离。 Maven 根据声明的多模块构建的模块间依赖关系计算此图。请注意,父 maven 项目也是一个依赖项,这解释了为什么在大多数项目图的顶部都有一个节点。反应器外部的依赖关系不会影响此图。
最后,如果您想跳过测试执行,您也可以使用
-DskipTests
。注意: 您的某些插件可能与多线程构建器不兼容,但它可能会工作。但它会给出以下警告信息。您可能需要查看多线程支持的插件文档。