grade构建阅读spring源码环境 Idea2020.3的过程

 更新时间:2020年10月27日 11:50:29   作者:阿波罗尼斯圆不是圆  
这篇文章主要介绍了grade构建阅读spring源码环境 Idea2020.3,本文分步骤通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

笔者看了很多博客,从早上搞到晚上,终于成功了😢

第一步:下载spring源码

​ 在这里我推荐到码云上下载,网速比较快,顺便附上网址

https://gitee.com/mirrors/Spring-Framework?_from=gitee_search

第二步:下载对应gradle版本

首先我们要确认我们下载的源码所需要的gradle版本是哪个,我们先解压源码,进入这个目录下的properties这个文件

spring-framework\gradle\wrapper\gradle-wrapper.properties

在这里我们可以看到对应gradle版本是5.6.4,所以接下来我们要去官网下载5这个版本的gradle

附上网址https://gradle.org/releases/

点击下载,解压

第三步:配置gradle环境变量

点击确认后就可以了,然后我们看下我们环境变量添加成功了没有,发现是成功的

第四步:预编译spring

我们在spring源码中可以看到这个md文件,打开

按照它的步骤,我们首先要在当前目录下执行

gradle :spring-oxm:compileTestJava

在这期间会报关于找不到git的错误,这个不用管它

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-l79U5apF-1603767359892)(C:\Users\WXC\AppData\Roaming\Typora\typora-user-images\image-20201026211824327.png)]

报错了就再跑几遍,看到success就成功了

第五步:导入到IDEA中

选择你的源码文件夹,之后

进去之后点击取消,因为我们已经自己下载了对应版本的Gradle了

之后我们要到设置里设置一下我们的Gradle

第六步:更换Gradle镜像源

中间四个替换成下面三个

maven{url 'http://maven.aliyun.com/nexus/content/groups/public/'}
maven{ url 'http://maven.aliyun.com/nexus/content/groups/public/' }
maven{ url 'http://maven.aliyun.com/nexus/content/repositories/jcenter'}

 

这个也是一样

第七步,编译spring

点击下面右边那个刷新,然后它会下载依赖,要挺久的

等等等…终于好了,发现它右边也能展开了,然后我们就开始测试啦

第八步:测试

新建一个gradle model

然后写一个简单的demo,发现包没有导进来

我们加入下面这行导包

然后点击构建,发现就可以了

然后更改设置

然后我们新建测试类测试,发现报了错

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-N5RGHWMJ-1603767359946)(C:\Users\WXC\Desktop\typora\image-20201027101638597.png)]

这时候我们要去导入一个包,具体看这篇博客

https://www.jb51.net/article/198320.htm

然后发现又报了错

这个问题具体看这篇博客

https://www.jb51.net/article/198325.htm

然后就可以了

然后我们加个配置类试试看,发现也是没问题的

那如果我们想进行单元测试呢,加上test,让他导入junit4,等到导入完成后我们进行测试,发现报错了

然后发现又报错了,我的天

这时候我们要降低junit版本,然后让它重新导入

如果运行还发现这个错误

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6TSj4ZSL-1603767359965)(C:\Users\WXC\Desktop\typora\image-20201027104945354.png)]

跟之前一样的步骤即可,终于可以了,感动😿

到这环境就搭建完成了,磕磕绊绊,开始进攻源码了!😃

到此这篇关于grade构建阅读spring源码环境 Idea2020.3的文章就介绍到这了,更多相关idea spring源码环境内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • mybatis and,or复合查询操作

    mybatis and,or复合查询操作

    这篇文章主要介绍了mybatis and,or复合查询操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • Java原生方法实现 AES 算法示例

    Java原生方法实现 AES 算法示例

    这篇文章主要介绍了Java原生方法实现 AES 算法,结合实例形式分析了Java实现AES加密算法的相关操作技巧,需要的朋友可以参考下
    2019-03-03
  • java通过isAccessAllowed方法实现访问控制

    java通过isAccessAllowed方法实现访问控制

    在Web应用开发中,使用Apache Shiro框架的isAccessAllowed方法可以有效管理用户的访问权限,本文详细解析了该方法的实现过程,包括用户身份验证、权限判断和安全性分析,下面就一起来了解一下
    2024-09-09
  • RocketMQ发送事务消息详解

    RocketMQ发送事务消息详解

    这篇文章主要介绍了RocketMQ发送事务消息详解,RocketMQ分布式事务消息不仅可以实现应用之间的解耦,又能保证数据的最终一致性,传统的大事务可以被拆分为小事务,不仅能提升效率,还不会因为某一个关联应用的不可用导致整体回滚,需要的朋友可以参考下
    2023-09-09
  • 深入理解Java设计模式之命令模式

    深入理解Java设计模式之命令模式

    这篇文章主要介绍了JAVA设计模式之命令模式的的相关资料,文中示例代码非常详细,供大家参考和学习,感兴趣的朋友可以了解
    2021-11-11
  • Spring Boot调用 Shell 脚本实现看门狗功能

    Spring Boot调用 Shell 脚本实现看门狗功能

    这篇文章主要介绍了Spring Boot调用 Shell 脚本实现看门狗功能,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-06-06
  • 详解Spring Data JPA动态条件查询的写法

    详解Spring Data JPA动态条件查询的写法

    本篇文章主要介绍了Spring Data JPA动态条件查询的写法 ,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-06-06
  • spring Cloud微服务阿里开源TTL身份信息的线程间复用

    spring Cloud微服务阿里开源TTL身份信息的线程间复用

    这篇文章主要为大家介绍了spring Cloud微服务中使用阿里开源TTL身份信息的线程间复用,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-01-01
  • MyBatis的动态拦截sql并修改

    MyBatis的动态拦截sql并修改

    因工作需求,需要根据用户的数据权限,来查询并展示相应的数据,那么就需要动态拦截sql,本文就来介绍了MyBatis的动态拦截sql并修改,感兴趣的可以了解一下
    2023-11-11
  • Java Mybatis中的 ${ } 和 #{ }的区别使用详解

    Java Mybatis中的 ${ } 和 #{ }的区别使用详解

    这篇文章主要介绍了Mybatis中的 ${ } 和 #{ }的区别使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07

最新评论