You need to enable JavaScript to run this app. Android Studio 4.0.2构建报405错误拉取aapt2依赖失败求助
优惠活动
大模型
产品
解决方案
定价
更多

Android Studio 4.0.2构建报405错误拉取aapt2依赖失败求助

aapt2资源405下载报错修复方案

问题根因

  • 拉取https://dl.google.com/dl/android/maven2/com/android/tools/build/aapt2/4.0.2-6197926/aapt2-4.0.2-6197926-osx.jar返回405状态码,核心触发原因有两个:
    1. 项目build.gradle配置中重复添加了指向Google Maven仓库的条目,Gradle对同一资源发起多次重复GET请求,被服务端拦截返回405
    2. 本地Gradle缓存残留了之前拉取失败生成的锁文件,反复开关离线模式时会持续读取这些无效缓存,无法完成正常资源拉取

修复操作步骤

1. 修正项目级build.gradle仓库配置

删除原有配置中重复的Google Maven地址条目,避免重复请求:

  • 调整后build.gradle的仓库配置参考:
// 项目根目录build.gradle内的buildscript块配置
buildscript {
    repositories {
        maven { url 'https://mirrors.cloud.tencent.com/Google/' }
        maven { url 'https://mirrors.cloud.tencent.com/nexus/repository/maven-public/' }
        google()
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:4.0.2'
    }
}

// 项目根目录build.gradle内的allprojects块配置
allprojects {
    repositories {
        maven { url 'https://mirrors.cloud.tencent.com/Google/' }
        maven { url 'https://mirrors.cloud.tencent.com/nexus/repository/maven-public/' }
        mavenLocal()
        google()
        mavenCentral()
    }
}

注意:原配置中单独添加的https://maven.google.com/条目要全部删除,该地址和Gradle内置google()方法指向的仓库完全重合,保留后会直接触发服务端的重复请求拦截。

2. 手动清理本地无效缓存

不依赖IDE自带的清缓存功能,直接删除故障资源的残留记录:

  • 打开本地Gradle缓存路径:~/.gradle/caches/modules-2/files-2.1/com.android.tools.build/aapt2/4.0.2-6197926/
  • 删除该路径下所有关联osx.jar的文件、.lock后缀的锁文件
  • 删除项目根目录下.gradle文件夹的全部内容

3. 调整离线模式操作逻辑

之前反复开关离线模式未生效,是操作时机错误:

  • 先将Gradle设置为在线模式,完成上述配置调整、缓存清理操作
  • 重新触发项目同步,等待aapt2资源正常拉取完成
  • 确认所有依赖拉取成功后,再根据需求开启Gradle离线模式;禁止在资源拉取失败状态下直接开启离线模式同步,会直接读取本地不完整的缓存触发报错。

4. 兜底处理方案

如果调整后仍然触发405报错,先检查本地代理、防火墙规则是否拦截了向dl.google.com发起的GET请求;网络链路正常的情况下,可手动获取对应版本的aapt2 jar包,放入本地缓存的对应目录下,跳过Gradle自动拉取环节。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.28 01:15:04