Spring源码解析(1)——环境搭建

获取源码地址

进入GitHub,https://github.com/spring-projects/spring-framework,获取git地址。
Spring源码解析(1)——环境搭建_第1张图片

下载源码

1、IDEA 下 Spring Git 拉取分支,选择Git
Spring源码解析(1)——环境搭建_第2张图片
2、复制git地址,选择安装目录,点击Clone
Spring源码解析(1)——环境搭建_第3张图片
3、等待拉取代码
Spring源码解析(1)——环境搭建_第4张图片
4、导入IDEA,选择Gradle,点击下一步,Gradle home选择安装Gradle的目录,点击finishSpring源码解析(1)——环境搭建_第5张图片

Spring源码解析(1)——环境搭建_第6张图片
5、导入成功
Spring源码解析(1)——环境搭建_第7张图片

创建测试模块

1、右键新建一个module
Spring源码解析(1)——环境搭建_第8张图片
2、选择Gradle,点击NextSpring源码解析(1)——环境搭建_第9张图片
3、输入模块名称,点击Next
Spring源码解析(1)——环境搭建_第10张图片

Spring源码解析(1)——环境搭建_第11张图片

开始测试

1、创建测试类时,有些包会不存在,所以先在Gradle中添加依赖。选择my-test模块的gradle文件,添加依赖

    compile project(":spring-beans")
    compile project(":spring-core")

Spring源码解析(1)——环境搭建_第12张图片
1、创建一个bean

// An highlighted block
package com.guiji.bean;

public class MyTestBean {

	private String testStr = "javaGuiji";

	public String getTestStr () {
		return testStr;
	}

	public void setTestStr(String testStr){
		this.testStr = testStr;
	}
}

2、创建xml文件

// An highlighted block
<?xml version="1.0" encoding="ISO-8859-1"?>
<beans xmlns="http://www.springframework.org/schema/beans"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://www.springframework.org/schema/beans
                       https://www.springframework.org/schema/beans/spring-beans-3.0.xsd">

   <bean id="myTestBean" class="com.guiji.bean.MyTestBean">

   </bean>

</beans>

4、创建测试类

// An highlighted block
package com.guiji.test;

import com.guiji.bean.MyTestBean;
import org.junit.Assert;
import org.junit.Test;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.xml.XmlBeanFactory;
import org.springframework.core.io.ClassPathResource;

public class BeanFactoryTest {

	@Test
	public void testSimpleLoad(){

		BeanFactory beanFactory = new XmlBeanFactory(new ClassPathResource("BeanFactoryTest.xml"));

		MyTestBean myTestBean = (MyTestBean) beanFactory.getBean("myTestBean");

		String testStr = myTestBean.getTestStr();

		System.out.println(testStr);

		Assert.assertEquals("javaGuiji",testStr);
		
	}

}

5、整个模块目录结构
Spring源码解析(1)——环境搭建_第13张图片
6、运行测试类,出现报错
Spring源码解析(1)——环境搭建_第14张图片
这是因为缺少cglib和objenesis包导致的,在idea中打开gradle,找到spring-core下的Tasks,在other中点击cglibRepackJar和objenesisRepackJar。
Spring源码解析(1)——环境搭建_第15张图片
继续运行报如下错
Spring源码解析(1)——环境搭建_第16张图片
解决办法如下图,设置测试运行器
Spring源码解析(1)——环境搭建_第17张图片
再次运行报如下错
Spring源码解析(1)——环境搭建_第18张图片
junit4.11以上版本不在包含hamcrest,引入hamcrest-core-1.3.jar或者降低junit版本,我这边是降低junit版本为4.10
Spring源码解析(1)——环境搭建_第19张图片
再次运行,终于成功了
Spring源码解析(1)——环境搭建_第20张图片
到此环境已经搭建好了,下面就可以开始进行源码分析了。

你可能感兴趣的:(Spring源码解析,spring)