zoukankan      html  css  js  c++  java
  • 【转】Spring源码编译

    原文地址:

    http://www.flyoung.me/2013/08/02/springcodecompile/

    参考资料:

    https://github.com/spring-projects/spring-framework/blob/master/import-into-eclipse.sh

    准备工作

    Git和JDK1.7+是必需的。因为最新的spring-framework是采用gradle编译的,故需要下载gradle。

    源码下载

    我下载的是Spring3.2.x版本

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

    源码编译

    1、修改gradlew.bat中关于jvm内存设置的参数

    原始设置:

    set GRADLE_OPTS=-XX:MaxPermSize=1024m -Xmx1024m -XX:MaxHeapSize=256m %GRADLE_OPTS%
    

    现在设置:

    set GRADLE_OPTS=-XX:MaxPermSize=512m -Xmx512m -XX:MaxHeapSize=256m %GRADLE_OPTS%
    

    不然会报如下错误:

    Error occurred during initialization of VM
    
    Could not reserve enough space for object heap
    
    Could not create the Java virtual machine
    

    2、在cmd中进入spring-framework目录中,运行 gradlew.bat build -x test,跳过所有的测试。因为测试总会有失败,原因在spring-oxm的测试用例有问题,导致编译失败。

    3、将源码导入eclipse中。

    3.1、cmd窗口执行命令

    gradlew.bat cleanEclipse :spring-oxm:compileTestJava eclipse -x :eclipse

    3.2、按照eclipse File > Import... > Existing Projects into Workspace导入所有的springFramework项目

    3.3、在cmd窗口执行

    gradlew.bat :eclipse

    3.4、按照eclipse File > Import... > Existing Projects into Workspace导入springFramework 父项目

    总结

    整个过程可谓历尽千辛万苦啊。看看成果吧。

  • 相关阅读:
    vscode安装
    Linux下 Python绘图与可视化 及matplotlib与_tkinter安装
    C语言-结构体定义的几种方式
    leetcode- 88. 合并两个有序数组
    leetcode-16. 最接近的三数之和
    Leetcode-15. 三数之和
    Leetcode-561. 数组拆分 I
    Windows_pycharm下安装numpy
    python实现两个两个的翻转字符串
    linux复制文件夹、重命名文件夹、删除文件夹
  • 原文地址:https://www.cnblogs.com/kofxxf/p/3723434.html
Copyright © 2011-2022 走看看