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

离线环境下Gradle无法找到Android Application插件的求助

解决Gradle无法从内网Artifactory找到Android插件的问题

1. 修正插件仓库配置位置

Gradle插件的解析逻辑独立于项目依赖,必须在**settings.gradle(或settings.gradle.kts)**的pluginManagement块中配置内网仓库,而非仅在build.gradle的repositories中配置。

修改根目录的settings.gradle文件:

pluginManagement {
    repositories {
        maven {
            url "https://my.artifactory/my-repo/gradle"
            // 若仓库需要认证,添加以下配置
            credentials {
                username = "你的Artifactory用户名"
                password = "你的Artifactory密码"
            }
        }
        // 注释掉外网插件仓库,避免Gradle尝试访问网络
        // gradlePluginPortal()
    }
}
rootProject.name = "你的项目名称"

2. 确认Artifactory的文件完整性与仓库配置

  • 检查文件完整性:本地~/.gradle/caches/modules-2/files-2.1/com.android.application/com.android.application.gradle.plugin/8.2.1目录下,除pom文件外通常还有对应jar文件。需确保该jar文件也已上传到Artifactory的同一hash子目录中,缺失jar会导致插件解析失败。
  • 验证仓库布局:确认Artifactory的my-repo仓库类型为Maven仓库,且使用默认Maven 2布局,保证Gradle能按group/name/version的路径规则找到插件文件。

3. 验证仓库访问权限

用curl命令测试能否正常访问插件pom文件,确认网络连通性与权限:

curl -u 用户名:密码 https://my.artifactory/my-repo/gradle/com.android.application/com.android.application.gradle.plugin/8.2.1/<你的hash值>/com.android.application.gradle.plugin-8.2.1.pom

若能成功下载pom文件,说明仓库配置无问题;若无法下载,先排查Artifactory的权限设置或路径是否正确。

4. 清理本地Gradle缓存(可选)

若本地缓存存在旧的无效记录,可删除项目根目录下的.gradle文件夹及用户目录的~/.gradle/caches目录,再重新执行构建:

rm -rf .gradle ~/.gradle/caches
./gradlew build

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 22:43:16