Mac OS X 使用grdle3.1+jdk8 将spring4.3编译成可导入eclipse等开发工具

步骤简介
1 从github上下载spring源代码
2 安装gradle(我用的gradle3.1最新版 只支持jdk8)
3 进入spring各模块代码文件夹 分别执行 gradle cleanidea eclipse 命令

第一步 下载spring源代码

1 新建一个文件夹 并进入此文件

cd program/gitSpringSource/

2 执行clone

git clone git://github.com/SpringSource/Spring-framework.git

3 进入文件夹查看 现在的文件还不能直接导入eclipse

第二步 安装 gradle 并配置 我是在Mac上执行的

1 下载gradle安装包

2 编辑.bash_profile


export JAVA_6_HOME=/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
export JAVA_7_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home
export JAVA_8_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_101.jdk/Contents/Home

export JAVA_HOME=$JAVA_7_HOME

alias jdk7='export JAVA_HOME=$JAVA_7_HOME'

alias jdk6='export JAVA_HOME=$JAVA_6_HOME'

alias jdk8='export JAVA_HOME=$JAVA_8_HOME'

#以上是配置jdk别名  方便切换
#下面是配置gradle
export GRADLE_HOME=/Users/mycomputer/program/gradle-3.1

export export PATH=$PATH:$GRADLE_HOME/bin

3 测试 终端输入gradle命令 显式表示成功

:help

Welcome to Gradle 3.1.

To run a build, run gradle <task> ...

To see a list of available tasks, run gradle tasks

To see a list of command-line options, run gradle --help

To see more detail about a task, run gradle help --task <task>

BUILD SUCCESSFUL

第三步

可以 进入spring目录, 执行命令: gradle eclipse -x :eclipse
但不推荐这样做 网络不好 会消耗几个小时

推荐
分别进入 各个模块 执行 gradle cleanidea eclipse 命令

比如

cd  /Users/chendonglin/program/gitSpringSource/Spring-framework/spring-tx

gradle cleanidea eclipse

然后将其分别导入 eclipse中

构建过程碰到的问题
0, gradle 执行命令时报错

java.lang.UnsupportedClassVersionError :
 Unsupported major.minor version 52.0
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClassCond(Unknown Source)
       .........................................

在stackoverflow 插到是jdk不支持 然后改成jdk1.8

1、spring-core项目里丢失了两个jar 包

spring-objenesis-repack-2.4.jar 和spring-cglib-repack-3.2.3.jar

在bulid.gradle 文件里在找到了两个 task cglibRepackJar和objenesisRepackJar

http://www.blogjava.net/wldandan/archive/2012/06/27/381605.html

C:\Users\Administrator>D:

D:>cd D:\gitclone\spring-framework

D:\gitclone\spring-framework>gradle cglibRepackJar
:buildSrc:compileJava UP-TO-DATE
:buildSrc:compileGroovy UP-TO-DATE
:buildSrc:processResources UP-TO-DATE
:buildSrc:classes UP-TO-DATE
:buildSrc:jar UP-TO-DATE
:buildSrc:assemble UP-TO-DATE
:buildSrc:compileTestJava UP-TO-DATE
:buildSrc:compileTestGroovy UP-TO-DATE
:buildSrc:processTestResources UP-TO-DATE
:buildSrc:testClasses UP-TO-DATE
:buildSrc:test UP-TO-DATE
:buildSrc:check UP-TO-DATE
:buildSrc:build UP-TO-DATE
:spring-core:cglibRepackJar
Download https://repo.spring.io/libs-release/com/googlecode/jarjar/jarjar/1.3/ja
rjar-1.3.pom
Download https://repo.spring.io/libs-release/com/googlecode/jarjar/jarjar/1.3/ja
rjar-1.3.jar
Download https://repo.spring.io/libs-release/cglib/cglib/3.2.3/cglib-3.2.3.pom
Download https://repo.spring.io/libs-release/cglib/cglib-parent/3.2.3/cglib-pare
nt-3.2.3.pom
Download https://repo.spring.io/libs-release/cglib/cglib/3.2.3/cglib-3.2.3.jar

BUILD SUCCESSFUL

Total time: 52.3 secs
D:\gitclone\spring-framework>gradle objenesisRepackJar
:buildSrc:compileJava UP-TO-DATE
:buildSrc:compileGroovy UP-TO-DATE
:buildSrc:processResources UP-TO-DATE
:buildSrc:classes UP-TO-DATE
:buildSrc:jar UP-TO-DATE
:buildSrc:assemble UP-TO-DATE
:buildSrc:compileTestJava UP-TO-DATE
:buildSrc:compileTestGroovy UP-TO-DATE
:buildSrc:processTestResources UP-TO-DATE
:buildSrc:testClasses UP-TO-DATE
:buildSrc:test UP-TO-DATE
:buildSrc:check UP-TO-DATE
:buildSrc:build UP-TO-DATE
:spring-core:objenesisRepackJar
Download https://repo.spring.io/libs-release/org/objenesis/objenesis/2.4/objenes
is-2.4.pom
Download https://repo.spring.io/libs-release/org/objenesis/objenesis-parent/2.4/
objenesis-parent-2.4.pom
Download https://repo.spring.io/libs-release/org/objenesis/objenesis/2.4/objenes
is-2.4.jar

BUILD SUCCESSFUL

Total time: 28.738 secs
D:\gitclone\spring-framework>
构建后就行了

2、我发现spring-oxm 项目也丢失了jaxb和xmlbeans jar 包,

我在 spring-oxm 子项目里执行

D:\gitclone\spring-framework\spring-oxm>gradle compileTestJava

构建后就可以

4、子项目spring-beans-groovy提示GroovyDynamicElementReader这个类不存在

原因是需要安装一个eclipse的groovy插件。
在eclipse的 Help -> Install New Software 中,添加groovy的下载连接:
http://dist.springsource.org/release/GRECLIPSE/e4.3/
然后全选后,开始下载,下载完后,重启eclipse,然后clean一下项目就搞定了。

总结
导入以后缺少jar 可以单独下载 然后 加入 到librarys里 就可以了 ,然后 选择所有模块 clean 一下 就全OK了

哇 哦哦 花费了三个小时 终于不报错了
这里写图片描述

想要源码的小伙伴 可以留言 发给你……^_^

阅读更多
想对作者说点什么? 我来说一句

JDK 1.7 For mac

2018年04月23日 196.7MB 下载

spring源码4.3(可直接导入eclipse)

2018年01月27日 7.58MB 下载

fink-0.39.3

2016年02月29日 1.16MB 下载

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭