修改gradle脚本,加速spring源码编译构建速度

本次优化的策略是跳过task来节省时间,例如文档包和源码包,因此,如果您的目标是拿到最新jar包,那么这种手段适合您,如果您想拿到包括文档、源码等在内的所有构建资源,那么这种方式就不适合了;

先列举一下软硬件环境信息:

  1. 硬件:i5-8400,16G(DDR4-2667MHz),SSD128G

  2. 操作系统:win10 64位

  3. JDK:1.8.0_171

  4. Gradle:2.14.1

  5. IntelliJ IDEA:2018.1.5

  6. spring-framework源码:4.1.8.RELEASE

注意,windows下编译spring-framwork4.1源码请参考《Win10环境编译spring-framework4.1.9版本,报错"Failed to capture snapshot of input files for task 'distZip'"》进行修改,否则会构建失败;

下载后并导入到IEDA之后,如果不调整build.gradle脚本就直接编译,耗时16分43秒,如下图:

现在我们来修改build.gradle文件,去掉一些与jar包构建无关的task;

  • 找到configure(subprojects - project(":spring-build-src")),在这个方法的结尾处有如下代码:

artifacts {
    archives sourcesJar
    archives javadocJar
}

改成下面这样,也就是将大括号内的两行都注释掉

artifacts {
    //archives sourcesJar
    //archives javadocJar
}
  • 找到configure(rootProject),在这个方法的结尾处有如下代码:

artifacts {
    archives docsZip
    archives schemaZip
    archives distZip
}

改成下面这样,也就是将大括号内的三行都注释掉

artifacts {
    //archives docsZip
    //archives schemaZip
    //archives distZip
}
  • build.gradle修改完毕,可以再次构建了,记得使用-x test参数跳过测试,操作如下图: 

  • 如下图所示,仅用1分59秒就完成构建,去子工程的build目录发现所需jar包构建成功(例如spring-framework-4.1.8.RELEASE\spring-context\build\libs): 

  • 为了保证数据准确,每次build之前已经做过clean操作;

至此,快速编译的操作就完成了,希望能带给您一些参考。

发布了376 篇原创文章 · 获赞 986 · 访问量 128万+

猜你喜欢

转载自blog.csdn.net/boling_cavalry/article/details/105337291