开工啦~Spring 完美导入 IDEA

87ed56f5ae47b8dacc4d78407a927acf.gif

作者 | 阿Q

来源 | 阿Q说代码

有小伙伴私信我说想要研究下Spring的源码,想让我出一期教程来实现IDEA导入Spring源码,今天它来了~

版本 :IDEA 2020.2.3 ;Spring 5.0.x ;gradle 4.4.1 ;

先从github上面把 spring  源码下载下来并解压:

3b40764839b4016a142f8e883b356841.png

切记:解压完成后不要直接用IDEA 打开,因为Spring 的源码是用 gradle 构建的。如果已经用IDEA 打开了请删除后重新解压。

我们找到文件夹

spring-framework-5.0.x\gradle\wrapper

下的 gradle-wrapper.properties 文件,查看里边的 gradle 版本,去官网下载。

eb20afcb1302945540009451fc5aac06.png 901c4c928d2fe8065e6af139c584b1d0.png

下载完成之后把 gradle 的环境变量配置一下,可以用gradle -version 来验证 gradle 是否配置成功

4ebd28416746a2e597a596b822a46633.png

USER_HOME/.gradle/ 下面新建 init.gradle 文件,将国外源换成国内镜像

allprojects {
 repositories {
     def REPOSITORY_URL = 'http://maven.aliyun.com/nexus/content/groups/public/'
  all { ArtifactRepository repo ->
      if(repo instanceof MavenArtifactRepository){
       def url = repo.url.toString()
    if(url.startsWith('https://repo1.maven.org/maven2/')||url.startsWith('https://jcenter.bintray.com/')){
        project.logger.lifecycle "Repository ${repo.url} replaced by $REPOSITORY_URL."
     remove repo
    }
   }
     }
  maven {
   url REPOSITORY_URL
  }
 }
}

spring-framework-5.0.x  下打开git 的窗口执行以下命令

./gradlew :spring-oxm:compileTestJava

该命令的作用是将 spring 转成IDEA 可以导入的工程结构。

dfc098ff41b951fd9175ca083f7b0eca.png

如果你新开的 Windowsdos 窗口,先进入源码的目录文件夹,执行命令不用加前面的./

配置 IDEA 中的 gradle

71e44201b315bec5b5e30d1054f8fa85.png

使用 File -> openSpring 工程导入到 IDEA 中,并等待 jar 下载完成。

如遇报错信息:

d07059fe65e0eceeff8098acc82cf329.png

build.gradle 中添加

maven { url "http://maven.aliyun.com/nexus/content/groups/public"}

其目的就是为了换成国内的镜像(init.gradle 有时没有生效)

b12b866fead212b2760149117b712b6b.png

编译时报错如下:

c6ffa61457e365d551f28c84352b534b.png

原因是 gradlegradle 插件版本过旧,更换更高的版本可以解决,但这个问题只是提示,不影响编译。

test 包中随便找了一个单元测试运行,成功运行

b32d9347ba3aa79ebc76d9e61a204ba5.png

以上就是今天的全部内容了。

aaad74179c665a8e4e91da5ed55754d8.gif

往期推荐

好难啊……一个 try-catch 问出这么多花样

k8s集群居然可以图形化安装了?

恶意流量威胁新趋势,揭秘网络黑产3大核心本质

将 k8s 制作成 3D 射击游戏,好玩到停不下来

6f450d169c07353494d03b92959c5709.gif

点分享

e3d22438471400552ab058f5a9974fe2.gif

点收藏

5e19e18b7cfc8d36d687bde88c2dbb64.gif

点点赞

1e3efc22cfd07ba7e4a03341b35c8ba7.gif

点在看

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值