zoukankan      html  css  js  c++  java
  • spring源代码系列(一)sring源代码编译 spring源代码下载 spring源代码阅读

    想对spring框架进行深入的学习一下,看看源码,提升和沉淀下自己,工欲善其事必先利其器,还是先搭建好开发环境吧。

    环境搭建

    sping源代码之前是svn管理,如今已经迁移到了github中了。新版本号基于gradle构建项目。所以构建sping源代码环境必须先安装github以及Gradle.
    当然了假设不想安装githubclient能够直接去git下载项目:spring中git地址https://github.com/spring-projects/spring-framework

    安装github

    首先去github官网下载安装包。我用的window环境下载地址:https://desktop.github.com/下载之后双击安装就可以,操作比較傻瓜式。


    安装Gradle

    Gradle是一个基于Apache Ant和Apache Maven概念的项目自己主动化建构工具。它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,抛弃了基于XML的各种繁琐配置。
    面向Java应用为主。当前其支持的语言限于Java、Groovy和Scala。计划未来将支持很多其它的语言。下载地址:http://gradle.org/gradle-download/,下载之后将文件解压配置环境变量例如以下图所看到的:
    1. 加入GRADLE_HOME F:gradle-allgradle-1.6依据自己的文件文件夹配置。

    2. 加入变量到path中。(这个不用说加入非常easy吧)

    Gradle文件夹结构例如以下图所看到的:

    測试是否成功安装:
    win+R 进入cmd模式输入命令:gradle -version假设成功安装 出现下图gradle 版本号信息:

    下载spring(假设没有安装githubclient能够依照以下的github地址直接下载就可以)

    spring git地址为:https://github.com/spring-projects/spring-framework能够直接下载下来防止命令clone比較慢。例如以下图所看到的:


    打开github或者直接进入gitsehll命名 我的建立在I盘springok文件里
    进入springok文件 右键 git bash打开git命名行例如以下图: 

    输入命令:git clone https://github.com/spring-projects/spring-framework 例如以下图所看到的:
    耐心等待吧,比較慢。。
    下载完毕之后命令界面例如以下图所看到的:

    下载完毕之后 看下下载的文件夹吧:

    ok了,可是默认的这样的方式并非eclipse项目,我们还须要将源代码转化为eclipse项目。

    编译的时候比較慢,由于项目须要的jar包可能须要从网络下载。(我第一次下载编译了4个小时终于搞定)最好能翻墙防止下载不下来。

    怎么编译呢,进入下载的文件夹打开cmd控制台输入 gradle cleanidea eclipse 開始编译成功之后会提示的,耐心等待吧。

    我的project地址是I:springokspring-framework
    操作过程例如以下:
    1. 进入当前的文件夹:
    2. 命令编译命令为:gradle cleanidea eclipse 
    编译成功了 成功转化为eclipse项目。
    编译可能遇到的问题:
    spring编译错误可能出现的错误:
    1. 提示build.gradle 配置文件错误,解决的办法哪里提示错误把哪行凝视或者删除就可以(大部分原因由于test測试错误去掉不用測试就可以)例如以下图所看到的:
    2. spring3X系列须要jdk5以上版本号,spring4X编译须要jdk8版本号。依据自己编译的版本号决定。
    3. jar包一直卡着下载不下来(可能网络不好最好能翻墙)

    导入eclipse

    批量导入到eclipse后假设出现感叹号或者错误。可能依赖的项目还没有编译缺少那个就编译那个吧,全部依赖的项目编译通过。这个编译的项目也通过。
    终于效果:

    ok大功告成,开启我们的spring源代码学习之旅吧。加油奋斗。




  • 相关阅读:
    Spring事件机制
    设计模式(07)——设计原则(2)
    设计模式(06)——设计原则(1)
    使用Feign发送HTTP请求
    设计模式(05)——组合和继承
    设计模式(04):接口和抽象类
    设计模式(03):面向对象与面向过程的区别与联系
    设计模式(二):面向对象及其特性分析
    设计模式(一):学习大纲
    Java8日期时间——LocalDateTime的使用以及相互转换
  • 原文地址:https://www.cnblogs.com/clnchanpin/p/7338590.html
Copyright © 2011-2022 走看看