spring源码(1)---idea基础环境搭建
一、环境准备
1. jdk1.8.1
做java开发的这个应该能自己找到
2.gradle-4.9 https://services.gradle.org/distributions/
没用过gradle的同学可以将其理解为类似于maven的包管理工具,这里下载gradle-4.9-bin.zip,解压到本地,配置环境变量(GRADLE_HOME=D:/dev/gradle[文件解压路径].,PATH变量新增”%GRADLE_HOME%/bin;“)
打开命令行执行一下gradle -v出现如下提示即成功
3.spring-framework源码包 https://github.com/spring-projects/spring-framework/tree/5.0.x
注意:这里对版本不做解释,只是我目前正在使用的可兼容的版本,spring-framework的源码包有需要最新的可自行切换分支即可。
对于下载或者clone源码比较慢的同学,这里可以通过码云做一下过渡,具体操作如下:
新建仓库-->导入已有仓库-->将github提供的clone地址拷贝过来,导入即可(这里一定要选择https,用ssh的地址是克隆不了的)-->大概2,3分钟即可克隆完成,再从码云下载就会快很多了。
二、项目导入
1.如果是clone的方式,先切到对应分支上;
2.如果是下载zip包的方式,先将压缩包解压到对应的代码目录即可。
发现根目录下有两个文件,如下:
本次使用的编译器是idea,那我们就只看import-into-idea.md文件
根据md文档中给出的步骤
1.预编译spring-oxm通过命令./gradlew :spring-oxm:compileTestJava(注意:给出的命令是Linux环境下的,Windows在执行代码根目录下执行gradlew :spring-oxm:compileTestJava)
我这里由于已经下载好了一次,这里保留一张执行成功的状态。
2.导入idea,可以直接import project->选择源码路径->选择gradle点击next->勾选Use auto-import,且配置一下gradle的安装目录,点击next即可
可以看到上图中最下面一行配置了Gradle VM options,这里也是根据官方提供的md文档中knows issues中所描述的,概括一下就是:如果想通过idea去运行测试案例的话,可以通过配置参数避免内存不足的情况。
接着等待gradle在中心仓库下载jar包,这里给网速比较慢的同学提供一个提速的方法,都知道maven从中心仓库下载jar包的时候速度是比较慢的,gradle也一样,所以建议使用阿里云的仓库去下载,只需要修改build.gradle文件中的下载地址如下:
repositories {
maven{ url 'http://maven.aliyun.com/nexus/content/groups/public/'}
}
等待下载完成。
最后新建一个自己的module如下[我这里新建了一个spring-peanut],把需要调试的项目包在build.gradle中的dependencies下引入即可。注意:新建module的时候是选gradle而非maven
最后就可以写一个自己的测试入口类去debug源码了。
spring源码(1)---idea基础环境搭建的更多相关文章
- spring源码学习之路---环境搭建(一)
作者:zuoxiaolong8810(左潇龙),转载请注明出处,特别说明:本博文来自博主原博客,为保证新博客中博文的完整性,特复制到此留存,如需转载请注明新博客地址即可. 最近已经开始了spring源 ...
- Dubbo 源码分析系列之一环境搭建
环境搭建的步骤有哪些 依赖外部的环境 使用的开发工具 源码的拉取 结构大致介绍 1 依赖的外部环境 安装JDK 安装Git 安装maven 这边我们就不介绍怎么安装这些外部环境了,大家自行从安装这些外 ...
- openwrt(一):openwrt源码下载及编译环境搭建
声明:从网上各位大神的博客学习,整理后记录,非原创. 注:请用非root用户来下载源码 导航: 1. openwrt编译环境搭建 2. openwrt源码下载 3. feeds更新 1. openwr ...
- mybatis源码分析之01环境搭建
直接使用maven搭建一个mybatis的运行环境 1. pom.xml <?xml version="1.0" encoding="UTF-8"?> ...
- bigdata_spark_源码修改_本地环境搭建_eclise
Eclipse 下开发调试环境的配置该小节中使用的各项工具分别为:mac (Windows 7)+Eclipse Java EE 4.4.2+Scala 2.10.4+Sbt 0.13.8+Maven ...
- 《Netty实战》源码运行及本地环境搭建
1.源码路径: GitHub - zzzvvvxxxd/netty-in-action-cn: Netty In Action 中文版 ,中文唯一正版<Netty实战>的代码清单 下载后 ...
- [ethereum源码分析](1) dubug环境搭建
前言 因为最近云小哥哥换了一份工作,新公司比较忙,所以一直没有更新新的博客.云小哥哥新的公司是做区块链的,最近在学习区块链相关的东西(也算是乘坐上了区块链这艘大船).本博客是记录我搭建ethereum ...
- Spring源码解析之基础应用(二)
方法注入 在spring容器中,大部分bean的作用域(scope)是单例(singleton)的,少部分bean的作用域是原型(prototype),如果一个bean的作用域是原型,我们A bean ...
- Spring源码解析之基础应用(三)
组合Java配置 在XML中,我们可以使用<import/>标签,在一个XML文件中引入另一个XML文件,在Java类中,我们同样可以在一个配置类中用@Import引入另一个配置类,被引入 ...
随机推荐
- MacOS系统降级
从MacOS 10.14 降级到 10.12,下载好系统镜像文件.打开,复制到Application. 准备一个至少8G的U盘,,打开磁盘工具,『抹掉』(格式化)成Mac OS扩展(日志式),名称可随 ...
- sql数据库为null时候ASP语句判断问题
我有一个表test1,有字段num,字段num有null值,也有空值,也有其他值,我要用asp语句判断我查询出来的num的值是否为null值.应该怎么写 严谨一点,要有两层判断: If IsNull( ...
- web端安全测试工具
https://www.cnblogs.com/ios9/p/7692373.html 十大web安全扫描工具 扫描程序可以在帮助造我们造就安全的Web 站点上助一臂之力,也就是说在黑客“黑”你之前, ...
- delphi 根据特殊符号字符获取字符串前或后的字符
function GetBefore(substr, str:string):string; {©Drkb v.3(2007): www.drkb.ru, ®Vit (Vitaly Nevzorov) ...
- rdd的元素打印
在集群上运行spark程序时,rdd的操作都在worker机上,因此输出rdd的元素将在worker机的标准输出上进行,驱动节点上不会运行,故直接才程序中写如下代码 rdd.foreach(print ...
- php关于文件上传的两个配置项说明
; Maximum allowed size for uploaded files.; http://php.net/upload-max-filesizeupload_max_filesize = ...
- Linux - 对比net-tools与iproute2
简介 net-tools包含ifconfig.route.arp和netstat等命令行工具,用于管理和排查各种网络配置. 起源于BSD TCP/IP工具箱,旨在配置老式Linux内核的网络功能. 自 ...
- iOS技术面试01:多线程与网络
1. 多线程的底层实现? 1> 首先搞清楚什么是线程.什么是多线程.多线程的使用场合(线程有时被称为轻量级进程,是程序执行流的最小单元.多线程是指软件或者硬件实现多个线程并发执行的技术.多线程的 ...
- Docker 跨主机网络 overlay(十六)
目录 一.跨主机网络概述 二.准备 overlay 环境 1.环境描述 2.创建 consul 3.修改 docker 配置文件 4.准备就绪 三.创建 overlay 网络 1.在 host1 中创 ...
- jvm minor gc 为什么比 full gc 快很多
1.minor gc 也需要STW,只不过正常情况下 minor gc STW时间非常短,所以很多人误以为没有STW. 这里的正常情况是,Eden 区产生的新对象大部分被回收了,不需要拷贝. 2.M ...