解决gradle下载jar包超时问题

报错情况

在这里插入图片描述

原始 init.gradle 配置

allprojects{
    repositories {
        maven { url 'https://maven.aliyun.com/repository/public/' }
        maven { url 'https://maven.aliyun.com/repository/jcenter/' }
        maven { url 'https://maven.aliyun.com/repository/central/' }
        maven { url 'https://maven.aliyun.com/repository/google/' }
        maven { url 'https://maven.aliyun.com/repository/gradle-plugin/' }
    }
}

解决方案

Maven 公共制品库在海外,虽然配置了使用阿里云镜像,但拉取 jar 包还是查了海外资源,因此修改一下配置:

def repoConfig = {
    all { ArtifactRepository repo ->
        if (repo instanceof MavenArtifactRepository) {
            def url = repo.url.toString()
            if (url.contains('repo1.maven.org/maven2')
            	|| url.contains('repo.maven.org/maven2')
            	|| url.contains('repo.maven.apache.org/maven2')
                || url.contains('jcenter.bintray.com')
                || url.contains('maven.google.com')
                || url.contains('plugins.gradle.org/m2')
                || url.contains('repo.spring.io/libs-milestone')
                || url.contains('repo.spring.io/plugins-release')
                || url.contains('repo.grails.org/grails/core')
                || url.contains('repository.apache.org/snapshots')
            ) {
                println "gradle init: [buildscript.repositories] (${repo.name}: ${repo.url}) removed"
                remove repo
            }
        }
    }
 
    // Maven 镜像聚合了:central、jcenter、google、gradle-plugin
    maven { url 'https://maven.aliyun.com/repository/central' }
    maven { url 'https://maven.aliyun.com/repository/jcenter' }
    maven { url 'https://maven.aliyun.com/repository/google' }
    maven { url 'https://maven.aliyun.com/repository/gradle-plugin' }
    maven { url 'https://maven.aliyun.com/repository/public/' }
}
 
allprojects {
    buildscript {
        repositories repoConfig
    }
    repositories repoConfig
}

注意事项

  1. maven { url ‘https://maven.aliyun.com/repository/central’ } 一定要放到第一个,有依赖顺序。
  2. setting.gradle 和 build.gradle 中的 repositories 也要配置成 maven { url ‘https://maven.aliyun.com/repository/gradle-plugin’ },以替换官方避免超时。
  3. setting.gradle 中的 pluginManagement 加上如下:
repositories {
        maven {
            url 'https://maven.aliyun.com/repository/gradle-plugin'
        }
}
  1. gradle-wrapper.properties 配置要使用国内地址代替官方地址去下载 gradle,否则也会超时。
distributionUrl=https\://mirrors.cloud.tencent.com/gradle/gradle-7.3-bin.zip
  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

”PANDA

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值