修改gradle脚本,加速spring4.1源码编译构建速度

简介: 跳过task来节省时间,例如文档包和源码包,加速编译过程

欢迎访问我的GitHub

这里分类和汇总了欣宸的全部原创(含配套源码): https://github.com/zq2599/blog_demos

本篇概览

  • 本次优化的策略是跳过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

这里写图片描述

  • 现在我们来修改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操作;

欢迎关注阿里云开发者社区博客:程序员欣宸

学习路上,你不孤单,欣宸原创一路相伴...
相关文章
|
14天前
|
缓存 Java 开发工具
Spring是如何解决循环依赖的?从底层源码入手,详细解读Spring框架的三级缓存
三级缓存是Spring框架里,一个经典的技术点,它很好地解决了循环依赖的问题,也是很多面试中会被问到的问题,本文从源码入手,详细剖析Spring三级缓存的来龙去脉。
Spring是如何解决循环依赖的?从底层源码入手,详细解读Spring框架的三级缓存
|
14天前
|
缓存 安全 Java
Spring框架中Bean是如何加载的?从底层源码入手,详细解读Bean的创建流程
从底层源码入手,通过代码示例,追踪AnnotationConfigApplicationContext加载配置类、启动Spring容器的整个流程,并对IOC、BeanDefinition、PostProcesser等相关概念进行解释
Spring框架中Bean是如何加载的?从底层源码入手,详细解读Bean的创建流程
|
14天前
|
XML 缓存 Java
手写Spring源码(简化版)
Spring包下的类、手写@ComponentScan注解、@Component注解、@Autowired注解、@Scope注解、手写BeanDefinition、BeanNameAware、InitializingBean、BeanPostProcessor 、手写AnnotationConfigApplicationContext
手写Spring源码(简化版)
|
4天前
|
XML 缓存 Java
spring源码剖析-spring-beans(内部核心组件,BeanDefinition的注册,BeanWapper创建)
spring源码剖析-spring-beans(内部核心组件,BeanDefinition的注册,BeanWapper创建)
36 10
|
4天前
|
XML 存储 Java
spring源码刨析-spring-beans(内部核心组件,beanDefinition加载过程)
spring源码刨析-spring-beans(内部核心组件,beanDefinition加载过程)
|
3天前
|
XML 存储 Java
Spring-源码深入分析(二)
Spring-源码深入分析(二)
|
3天前
|
XML 设计模式 Java
Spring-源码深入分析(一)
Spring-源码深入分析(一)
|
11月前
|
人工智能 移动开发 Java
Android Studio插件版本与Gradle 版本对应关系
Android Studio插件版本与Gradle 版本对应关系
2065 0
Android Studio插件版本与Gradle 版本对应关系
|
存储 Java Android开发
Android 开发 - 充分利用Gradle
Android 开发 - 充分利用Gradle
158 2
|
3月前
|
C# Android开发 开发者
Android gradle编译时字节码处理
Android gradle编译时字节码处理
48 1