栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

【spring源码gradle构建失败,jcenter问题】

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【spring源码gradle构建失败,jcenter问题】

某些旧的gradle配置失效的原因在于“2021年2月3日,JFrog宣布将关闭Bintray和JCenter。计划在2022年2月完全关闭。”

网上的绝大部分init.gradle 配置已经过时,对于学习spring源码的同学来说,造成了误导,其实主要是本身对gradle不了解,毕竟大家绝大部分是从用maven过来的。

1.spring源码从github或者gittee clone或者下载zip都行

2.导入idea后,idea会基于源码中的构建脚本自动下载脚本中指定的版本,右下角进度条,点击取消,下一步配置自己的本地版本

3.配置自己的自定义设置,gradle_user_home 可以默认,也可以自定义,影响不大,可以类比成maven 本地仓库,默认的话,gradle下载的依赖就在C:Users账号.gradle中了

user gradle home这个记得改,改成你本地下载的任意版本gradle安装目录

4.在安装目录里面的init.d 文件中,添加全局初始化配置。

allprojects{
    repositories {
        def ALIYUN_REPOSITORY_URL = 'https://maven.aliyun.com/repository/public/'
        //很多旧的攻略保留了这个,导致去阿里jcenter下载,但是又没有对于版本,报错了,直接用maven仓地址,反正全有,不知道原有的,很多在构建最后阶段报错,提示下载不到几个关键jar包,为了说明问题我把注释的也保留
        //def ALIYUN_JCENTER_URL = 'https://maven.aliyun.com/repository/jcenter/'
        def ALIYUN_GOOGLE_URL = 'https://maven.aliyun.com/repository/google/'
        def ALIYUN_GRADLE_PLUGIN_URL = 'https://maven.aliyun.com/repository/gradle-plugin/'
        all { ArtifactRepository repo ->
            if(repo instanceof MavenArtifactRepository){
                def url = repo.url.toString()
                if (url.startsWith('https://repo1.maven.org/maven2/')) {
                    project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_REPOSITORY_URL."
                    remove repo
                }
                //注意,此处也改成阿里云maven仓,
                if (url.startsWith('https://jcenter.bintray.com/')) {
                    project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_REPOSITORY_URL."
                    remove repo
                }
                if (url.startsWith('https://dl.google.com/dl/android/maven2/')) {
                    project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_GOOGLE_URL."
                    remove repo
                }
                if (url.startsWith('https://plugins.gradle.org/m2/')) {
                    project.logger.lifecycle "Repository ${repo.url} replaced by $ALIYUN_GRADLE_PLUGIN_URL."
                    remove repo
                }
            }
        }
        maven { url ALIYUN_REPOSITORY_URL }
        //maven { url ALIYUN_JCENTER_URL }
        maven { url ALIYUN_GOOGLE_URL }
        maven { url ALIYUN_GRADLE_PLUGIN_URL }
    }
}

5.配置完之后,idea可能缓存原因,并没有采用自定义配置。

idea files/invalidate caches。重启后,自动采用自定义配置,构建spring源码了

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/671762.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号