IntelliJ Idea导入Spring 源码教程(Mac版)

第一步:下载github上Spring源码

  下载地址:https://github.com/spring-projects/spring-framework  可以选择自己要下载的版本。

idea怎么看springboot的源码 idea查看spring版本_Gradle

第二步:下载Gradle

  因为Spring源码是用Gradle进行自动化构建的。所以先要下载并安装好Gradle->下载地址:https://gradle.org/releases/。

NOTICE:你下载的Gradle版本需要和你下载的Spring源码中的所需要的版本一致。

  你可以查看源码gradle/wraaper/gradle-wrapper.properties文件中的Gradle的版本。

idea怎么看springboot的源码 idea查看spring版本_java_02

  下载完对应版本的Gradle后,我们来进行安装,主要就是进行环境变量的配置。本人所用的macOS所以先进入终端然后 vim ~/.bash_profile打开配置文件之后输入i进入编辑模式编辑环境变量以下是配置信息

idea怎么看springboot的源码 idea查看spring版本_github_03

export GRADLE_HOME=Gradle所在路径export PATH=$PATH:$GRADLE_HOME/bin配置完成后,我们执行gradle -v如果结果如下图就说明安装成功了

idea怎么看springboot的源码 idea查看spring版本_spring_04

第三步:按照Spring源码上import-into-idea.md说明导入到IntellijIdea

idea怎么看springboot的源码 idea查看spring版本_github_05

  • 第一步:先用Gradle编译Spring源码中的spring—oxm模块。先找到spring-oxm所在目录然后运行./gradlew :spring-oxm:compileTestJava
  • idea怎么看springboot的源码 idea查看spring版本_github_06

  • idea怎么看springboot的源码 idea查看spring版本_Gradle_07

  • 第二步:然后导入spring源码到IntelliJIdea->配置Gradle->等待加载Jar(等待时间较长)。
  • idea怎么看springboot的源码 idea查看spring版本_spring_08

  • idea怎么看springboot的源码 idea查看spring版本_java_09

  • idea怎么看springboot的源码 idea查看spring版本_spring_10

  • 第三步:因为spring-aspects模块依赖AspectJ所以要先下好aspectj.jar,之后导入到项目中Project Structure–>Modules–>spring-aspects。
  • idea怎么看springboot的源码 idea查看spring版本_Gradle_11

我们完成上述三步后,然后BuildProject发现了如下错误:

idea怎么看springboot的源码 idea查看spring版本_spring_12

查阅资料后发现错误原因:主要原因是Idea默认使用的Javac编译器,而aspectj关键字它不认识。接下来我们打开IDEA–Preferences–Build,Execution,Deployment–Compiler–JavaCompiler,将Use compiler设置为Ajc,将Path to Ajc compiler设置为AspectJ安装目录下的lib文件夹中的aspectjtools.jar文件,同时,可以勾选Delegate to Javac选项,它能够只编译AspectJ的Facets项目,而其他普通项目还是交由Javac来编译。

idea怎么看springboot的源码 idea查看spring版本_spring_13

完成上述步骤后将spring-aop-main和spring-aspectjs-main两个模块添加AspectJ Facets: 打开:File–Project Structure–Facets,点击+号,选择AspectJ,选择spring-aop-main。添加完后,同样的操作,将spring-aspectjs-main模块也设置AspectJ。

idea怎么看springboot的源码 idea查看spring版本_github_14

完成以上步骤之后,我们BuildProject

idea怎么看springboot的源码 idea查看spring版本_spring_15

完成之后我们写个Test跑一下代码

idea怎么看springboot的源码 idea查看spring版本_Gradle_16