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

Gradle未更新build.gradle仓库配置,拉取slf4j报错401

问题:删除Maven仓库后Gradle仍尝试从旧仓库拉取依赖

错误日志

> Could not resolve all files for configuration ':app:debugCompileClasspath'.
   > Could not resolve org.slf4j:slf4j-api:1.+.n     Required by:
         project :app
      > Failed to list versions for org.slf4j:slf4j-api.
         > Unable to load Maven meta-data from https://whatever.com/artifactory/maven/org/slf4j/slf4j-api/maven-metadata.xml.
            > Could not GET 'https://whatever.com/artifactory/maven/org/slf4j/slf4j-api/maven-metadata.xml'. Received status code 401 from server: Unauthorized

当前根目录build.gradle配置

repositories {
        mavenCentral()
        google()
        jcenter()
    }
    
allprojects {
    repositories {
        mavenLocal()
        google()
        jcenter()
        maven { url "https://jitpack.io" }
        maven { url "https://maven.google.com" }
        mavenCentral()
        flatDir {
            dirs("libs")
        }
    }
}

已删除原有的maven { "whatever.com" }仓库配置,但Gradle仍尝试从该仓库拉取slf4j依赖,已执行以下操作:

  • 清除缓存并重启
  • 删除build文件夹
  • 删除.idea文件夹
  • 删除~/.gradle/caches目录
  • 清理项目
  • 完全关闭Android Studio并通过终端构建
  • 确认build.gradle已正确保存

原因分析及解决方案

1. 子模块配置遗漏检查

根目录build.gradle的allprojects块虽统一配置仓库,但不排除子模块的build.gradle单独声明了旧仓库。检查所有子模块的build.gradle文件,确保没有遗留maven { url "https://whatever.com/artifactory/maven" }这类配置。

2. 其他配置文件包含旧仓库

  • 查看settings.gradle(或settings.gradle.kts):检查是否存在dependencyResolutionManagement块,其中可能单独配置了仓库列表,未删除旧仓库地址。
  • 查看gradle.properties:确认没有与旧仓库相关的配置项(比如自定义的仓库URL变量)。

3. 第三方依赖硬编码仓库地址

部分第三方库会在自身的pom文件中指定依赖仓库,导致Gradle优先尝试从该仓库拉取依赖。执行以下命令查看slf4j-api的依赖溯源:

./gradlew app:dependencies --configuration debugCompileClasspath

找到slf4j-api的依赖路径,确认是否由某个第三方库引入,且该库的pom文件中指定了旧仓库。这种情况下,可强制指定slf4j-api的具体版本(选择mavenCentral上存在的版本,比如1.7.36),避免Gradle去旧仓库获取版本元数据:

implementation 'org.slf4j:slf4j-api:1.7.36'

4. 缓存未彻底清理

虽然删除了~/.gradle/caches,但Gradle还有构建缓存和wrapper缓存:

  • 执行命令清理构建缓存:
    ./gradlew cleanBuildCache
    
  • 删除~/.gradle/wrapper/dists目录下的缓存文件,重新下载Gradle wrapper。
  • 在Android Studio中执行File -> Invalidate Caches...,勾选"Clear file system cache and local history"后重启IDE。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.17 23:34:53