记录一下Spring源码构建的坑

1.源码对各个组件的版本似乎都有要求,如果跟着网上过时的教程看,可能会重装ide、重装Java……,建议直接找个最新的idea版本,较新的Spring源码版本,找到源码对应的Java版本与Gradle版本(Gradle版本在源码/gradle/wrapper/gradle-wrapper.properties中可以找到),本文使用的版本如下

组件版本
spring-framework6.0.2
jdk

17.0.1 

gradle

7.5.1

ideaIDEA Community Edition 2024.1

2.代码在构建的过程中可能会额外下载新的Gradle(并不清楚为什么,已经修改wrapper.properties中的distributionUrl了),如果出现这种情况,可以在两个可能的Gradle下载目录里都加上init.gradle,以加快依赖下载速度

#  wrapper.properties文件

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=file:///D:/Code/Environment/gradle/gradle-7.5.1-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists

#  init.gradle文件,放在gradle-7.5.1\init.d文件夹下

allprojects {
    repositories {
        //本地存放依赖的路径
        maven { url 'file:///D:\\Code\\Environment\\gradle\\repository'}
        mavenLocal()
        maven { name "Alibaba" ; url "https://maven.aliyun.com/repository/public" }
        //使用该下载地址会报错,因为不是https。可以将http改为https
        //maven { name "Bstek" ; url "http://nexus.bsdn.org/content/groups/public/" }
        mavenCentral()
    }

    buildscript { 
        repositories { 
            maven { name "Alibaba" ; url 'https://maven.aliyun.com/repository/public' }
            //使用该下载地址会报错,因为不是https。
            //maven { name "Bstek" ; url 'http://nexus.bsdn.org/content/groups/public/' }
            maven { name "M2" ; url 'https://plugins.gradle.org/m2/' }
        }
    }
}
 

3.改build.gradle与settings.gradle,增加一行阿里云mvn仓库地址

maven { url 'https://maven.aliyun.com/repository/public' } // 阿里云

4.如果构建过程中出现带io.spring.ge.conventions字样的报错,则注释掉settings.gradle的12行这个地方

5.然后就是执行gradlew.bat和gradlew :spring-oxm:compileTestJava,如果这两个地方都Build Success那应该就是成功了,最后根据import-into-idea.md指示,用idea打开项目并等待构建就ok了

  • 18
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值