一直想学习spring框架的源码,到现在才把代码下载并顺利导入eclipse中。稍微总结一下:
1.重点注意:
(1)必须安装jdk1.8,否则导入时会报错。jdk版本不对应的话会报错。Unsupported major.minor version 52.0
(2)由于该框架是由gradle管理的,因此必须安装gradle。安装成功后,在eclipse中还需要安装Gradle与Eclipse集成的插件Buildship,而且该插件的版本也必须与eclipse当前的版本对应。例如我的eclipse版本如下:
那么对应的安装Buildship时也需要对应的版本。
版本对应关系参考地址:https://github.com/eclipse/buildship/blob/master/docs/user/Installation.md
因此我使用的版本是:
2.操作步骤如下:
http://www.cnblogs.com/IcanFixIt/p/6909338.html
(2)spring-framework-4.1.x源码阅读环境搭建(导入Eclipse)
注意:搭建spring-framework-4.1.x源码 eclipse工作空间需要安装jdk8.
http://blog.csdn.net/Rongbo_J/article/details/50187751
(3)将spring源码导入后,部分项目会报错,是因为缺少jar包。后续处理报错参考:
http://blog.csdn.net/vinvis/article/details/70241473
a、导入完成之后发现spring-beans-groovy工程中有错误,这是由于eclipse中没有安装groovy插件导致的。
在线安装直接: help--->install new software. 添加下面站点:
4.4 (Luna) | http://dist.springsource.org/release/GRECLIPSE/e4.4/ |
离线安装:http://www.xwood.net/_site_domain_/_root/5870/5930/5932/t_c261627.html
离线安装包下载:https://pan.baidu.com/s/1pLFzIZ5
b、打开之后会有部分项目出错,绝大部分原因是因为spring-oxm报错,提示castor和jaxb找不到了,解决办法:前往之前解压好的spring-oxm源码目录下,执行gradle cleanIdea :spring-oxm:compileTestJava,等待编译完成后,在eclipse删除之前导入的spring-oxm,再重新导入spring-oxm,即可。
c、可能还有spring-test,spring-web会有报错:The method endsWith(String) isambiguous for the type DisabledIfConditionTestCase,原因是因为此处导入的包的时候,有相同的方法名,所以冲突了
原来调用的代码
可以改为
参考文章:http://blog.csdn.net/honghailiang888/article/details/52637506?locationNum=1