IDEA阅读Spring源码

一.环境准备

  1. 操作系统及开发环境:Mac
  2. JDK1.8
    在这里插入图片描述
  3. 由于Spring源码是采用Gradle这种自动化构建工具构建,因此还需要安装Gradle
    在这里插入图片描述

二.编译步骤

  1. 下载源码
    源码地址:Spring源码地址
    或者直接拉取代码:git clone https://github.com/spring-projects/spring-framework.git

  2. 进入项目目录:cd ./spring-framework

  3. 源码导入eclipse时可查看:import-into-eclipse.md
    导入IDEA时可查看:import-into-idea.md
    import-into-idea.md 文件的内容如下:

The following has been tested against IntelliJ IDEA 2016.2.2

## Steps

_Within your locally cloned spring-framework working directory:_

1. Precompile `spring-oxm` with `./gradlew :spring-oxm:compileTestJava`
2. Import into IntelliJ (File -> New -> Project from Existing Sources -> Navigate to directory -> Select build.gradle)
3. When prompted exclude the `spring-aspects` module (or after the import via File-> Project Structure -> Modules)
4. Code away

## Known issues

1. `spring-core` and `spring-oxm` should be pre-compiled due to repackaged dependencies.
See `*RepackJar` tasks in the build and https://youtrack.jetbrains.com/issue/IDEA-160605).
2. `spring-aspects` does not compile due to references to aspect types unknown to
IntelliJ IDEA. See http://youtrack.jetbrains.com/issue/IDEA-64446 for details. In the meantime, the
'spring-aspects' can be excluded from the project to avoid compilation errors.
3. While JUnit tests pass from the command line with Gradle, some may fail when run from
IntelliJ IDEA. Resolving this is a work in progress. If attempting to run all JUnit tests from within
IntelliJ IDEA, you will likely need to set the following VM options to avoid out of memory errors:
    -XX:MaxPermSize=2048m -Xmx2048m -XX:MaxHeapSize=2048m
4. If you invoke "Rebuild Project" in the IDE, you'll have to generate some test
resources of the `spring-oxm` module again (`./gradlew :spring-oxm:compileTestJava`)    


## Tips

In any case, please do not check in your own generated .iml, .ipr, or .iws files.
You'll notice these files are already intentionally in .gitignore. The same policy goes for eclipse metadata.

## FAQ

Q. What about IntelliJ IDEA's own [Gradle support](http://confluence.jetbrains.net/display/IDEADEV/Gradle+integration)?

A. Keep an eye on http://youtrack.jetbrains.com/issue/IDEA-53476

三.进行编译并打开项目

根据 import-into-idea.md 的步骤,对spring源码进行编译。

  1. 运行: ./gradlew :spring-oxm:compileTestJava
  2. 在IDEA中:File -> New -> Project from Existing Sources -> Navigate to directory -> Select build.gradle
  3. 在导入模块的时候将module spring-aspects 排除

然后等待IDEA的安装依赖过程结束即可。

猜你喜欢

转载自blog.csdn.net/diagnoa_wleng/article/details/86588780