0%

Idea 中Maven 多线程编译

Maven3.X 里支持了多线程编译, 分析项目的依赖关系图, 并行构建各个模块:

1
2
3
4
5
mvn -T 4 clean install      #指定起4个线程编译   
mvn -T 1C clean install #每个CPU核心起1个线程
mvn -T 1.5C clean install #每个CPU核心起1.5个线程

mvn clean package -T 1C -Dmaven.test.skip=true -Dmaven.compile.fork=true

到底能提升多少编译的速度:

这很大程度上取决于项目的具体模块结构, 但官方的说法是: 速度能普遍提高20 - 50 %.

那么如何在IDEA里开启这个功能:

5d381a4d47ec370686

什么是Wall

5d381c3a9702624222

一个项目默认构建的总时间是06:10 min, 我们称之为必须的耗时.

但是因为你开启了多线程编译, 现在需要03:32 min, 我们称之为实际的耗时.

为了体现出是并行编译消耗了03:32 min, Maven把实际的耗时叫做Wall Clock.
非常形象的告诉你, 虽然项目编译需要六分钟, 但实际上编译完成时, 墙上的钟表才过去了三分钟:)