You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter升级适配包后即便降级仍出现Gradle下载403报错求助

Flutter构建阶段Gradle 403错误解决方案

错误本质定位

根据报错栈分析,故障核心是Gradle Wrapper向官方源发起gradle-5.1.1-all.zip下载请求时,被目标服务器返回403权限拒绝,并非Flutter版本不兼容导致的代码层面构建错误。
已验证的问题表现:

  • 故障触发节点:为适配第三方包升级Flutter版本后首次出现报错,即便降级回之前正常使用的Flutter稳定版,报错仍持续存在
  • 已尝试无效操作:
    • 将gradle-wrapper.properties中的http下载链接替换为https版本
    • 多次切换不同版本的Flutter与Gradle组合尝试构建

分步修复操作

1. 替换Gradle官方下载源为可用镜像

之前尝试http转https无效,本质是官方Gradle源在部分网络环境下存在访问拦截,并非协议本身的问题。修改android/gradle/wrapper/gradle-wrapper.properties配置文件,将原有的官方下载链接替换为同步更新的镜像地址:
原配置内容:

distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=http\://services.gradle.org/distributions/gradle-5.1.1-all.zip

替换distributionUrl字段内容为镜像地址:

distributionUrl=https\://mirrors.cloud.tencent.com/gradle/gradle-5.1.1-all.zip

2. 清理已停服的Maven仓库配置

当前项目的android/build.gradle配置中存在两个已永久停服的仓库地址,访问时必然触发403错误:

  • jcenter():原JCenter公共仓库已于2022年停止所有服务
  • https://dl.bintray.com/alphacep/vosk:原Bintray代码托管平台已全面关闭,链接完全失效
    调整后的完整build.gradle配置如下:
buildscript {
    ext.kotlin_version = '1.3.50'
    repositories {
        maven { url 'https://maven.aliyun.com/repository/google' }
        maven { url 'https://maven.aliyun.com/repository/public' }
        google()
        mavenCentral()
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:3.5.0'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
}

allprojects {
    repositories {
        maven { url 'https://maven.aliyun.com/repository/google' }
        maven { url 'https://maven.aliyun.com/repository/public' }
        google()
        mavenCentral()
    }
}

rootProject.buildDir = '../build'
subprojects {
    project.buildDir = "${rootProject.buildDir}/${project.name}"
}
subprojects {
    project.evaluationDependsOn(':app')
}

3. 清除本地残留的无效构建缓存

多次下载失败会在本地Gradle用户目录残留不完整的损坏文件,导致重试时依然读取无效缓存触发报错,执行以下命令清理:

  • 删除对应版本Gradle的本地缓存:rm -rf ~/.gradle/wrapper/dists/gradle-5.1.1-all
  • 清理项目端构建缓存:进入项目根目录执行flutter clean

4. 补全Android SDK许可配置

从flutter doctor的输出结果可见,当前Android SDK的许可状态异常,会在构建阶段拦截流程,执行以下操作:

  • 终端运行flutter doctor --android-licenses,对所有弹出的许可提示输入y完成确认接受

验证方式

完成以上配置调整后,在项目根目录执行flutter run启动构建,Gradle会从可用镜像源顺利下载对应版本,不再触发403报错。

内容的提问来源于stack exchange,提问作者fares ernez

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.25 10:36:03