gradle构建spring源码环境

Posted Javachichi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了gradle构建spring源码环境相关的知识,希望对你有一定的参考价值。

相信每一个Java程序员都有阅读spring源码的想法,但是在构建的时候就碰到了各种坑,本篇文章详细介绍使用构建spring-framework-5.0.2.RELEASE-中文注释版的方式,按照这个步骤保证你一次构建成功,避免踩坑。

下载对应gradle版本

确定gradle版本

不同版本的spring,使用的gradle版本也不一样。查看gradle/wrapper/gradle-wrapper.properties文件可以看到当前spring采用的gradle是什么。

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https://services.gradle.org/distributions/gradle-4.3.1-bin.zip 

可以看到,我们使用的gradle版本是4.3.1

手动安装gradle

gradle下载地址:gradle.org/releases/

找到4.3.1版本进行下载。然后配置环境变量,下面以mac为例说明。

gradle

首先在命令行终端输入vim ~/.bash_profile命令,然后新增以下配置:

export GRADLE_HOME=/Users/chentianming/Downloads/work/gradle-4.3.1
export PATH=$PATH:$GRADLE_HOME/bin 

最后执行source ~/.bash_profile使配置生效。完成之后,使用gradle -v验证。

如果你觉得自己学习效率低,缺乏正确的指导,可以加入资源丰富,学习氛围浓厚的技术圈一起学习交流吧!
[Java架构群]
群内有许多来自一线的技术大牛,也有在小厂或外包公司奋斗的码农,我们致力打造一个平等,高质量的JAVA交流圈子,不一定能短期就让每个人的技术突飞猛进,但从长远来说,眼光,格局,长远发展的方向才是最重要的。

配置阿里云镜像源

为了加快访问速度,可全局配置阿里云镜像源。进入~/.gradle文件夹,新建init.gradle文件,输入以下内容:

allprojects{
    repositories {
        def ALIYUN_REPOSITORY_URL = 'http://maven.aliyun.com/nexus/content/groups/public'
        def ALIYUN_JCENTER_URL = 'http://maven.aliyun.com/nexus/content/repositories/jcenter'
        all { ArtifactRepository repo ->
            if(repo instanceof MavenArtifactRepository){
                def url = repo.url.toString()
                if (url.startsWith('https://repo1.maven.org/maven2')) {
                    project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_REPOSITORY_URL."
                    remove repo
                }
                if (url.startsWith('https://jcenter.bintray.com/')) {
                    project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_JCENTER_URL."
                    remove repo
                }
            }
        }
        maven {
            url ALIYUN_REPOSITORY_URL
            url ALIYUN_JCENTER_URL
        }
    }
} 

编译spring

打开import-into-idea.md文件,里面描述了构建步骤,重点步骤如下:

  1. 使用gradle :spring-oxm:compileTestJava预编译。
  2. 导入到IDEA中(File -> New -> Project from Existing Sources -> Navigate to directory -> Select build.gradle)。
  3. 当提示时排除 spring-aspects 模块。

预编译

镜像改为阿里云

编译前,将项目的build.gradle指定的镜像源改为阿里云,确保依赖可以顺利下载。 gradle-build

执行预编译

输入命令执行预编译。如果出现aspectJ相关失败,可以把对应的Test代码先注掉。

比如上面报错,直接先把AutoProxyLazyInitTests.javaAdvisorAutoProxyCreatorTests.java代码注释掉。

多试几次,最后出现BUILD SUCCESSFUL表示成功。

导入到IDEA中

按如下路径选择导入:(File -> New -> Project from Existing Sources -> Navigate to directory -> Select build.gradle)

稍等一段时间,就可以确保导入成功了~

最后

秃头哥给大家分享一篇一线开发大牛整理的java高并发核心编程神仙文档,里面主要包含的知识点有:多线程、线程池、内置锁、JMM、CAS、JUC、高并发设计模式、Java异步回调、CompletableFuture类等。

文档地址:一篇神文就把java多线程,锁,JMM,JUC和高并发设计模式讲明白了

码字不易,如果觉得本篇文章对你有用的话,请给我一键三连!关注作者,后续会有更多的干货分享,请持续关注!

以上是关于gradle构建spring源码环境的主要内容,如果未能解决你的问题,请参考以下文章

深入浅出Spring源码构建Spring源码阅读环境

深入浅出Spring源码构建Spring源码阅读环境

深入浅出Spring源码构建Spring源码阅读环境

spring学习记录-源码构建

spring源码构建

Spring源码阅读环境搭建