升级到 Gradle 6 和 Android Gradle 插件 4.0.0 无法获取“https://dl.google.com/android/repository/addons_list-3.x

Posted

技术标签:

【中文标题】升级到 Gradle 6 和 Android Gradle 插件 4.0.0 无法获取“https://dl.google.com/android/repository/addons_list-3.xml”【英文标题】:Upgrade to Gradle 6 & Android Gradle Plugin 4.0.0 fails to fetch "https://dl.google.com/android/repository/addons_list-3.xml" 【发布时间】:2020-11-10 23:14:33 【问题描述】:

我为我的 android 项目配置了 CI。

项目所在的服务器无法访问互联网。所以,我得到这个错误:

 IOException: https://dl.google.com/android/repository/addons_list-3.xml
 java.net.ConnectException: Connection timed out (Connection timed out)

项目build.gradle 文件中的所有存储库都声明如下:

repositories 
    maven("https://artifactory.mycompany.com/artifactory/jfrog-gradle-plugins")
    maven("https://artifactory.mycompany.com/artifactory/maven-fabric")
    maven("https://artifactory.mycompany.com/artifactory/remote-repos")
    maven("https://artifactory.mycompany.com/artifactory/google-maven")
    maven("https://artifactory.mycompany.com/artifactory/jcenter")
    maven("https://artifactory.mycompany.com/artifactory/libs-android")

当我将 Gradle Wrapper 升级到 6.1.1 和 Android Gradle Plugin 4.0.0 时开始出现此错误。

主要变化是此处描述的变化:

https://docs.gradle.org/6.0/userguide/declaring_repositories.html#sec:supported_metadata_sources

..也就是说,我将这些选项添加到我的存储库中,因为我有没有 pom.xml 文件的工件/库。

    metadataSources 
        mavenPom()
        artifact()
    

所以,我认为上述更改使 Gradle 插件尝试从

https://dl.google.com/android/repository/addons_list-3.xml

但我无法确认是不是这个原因。

【问题讨论】:

【参考方案1】:

原来我的 CI 设置使用的构建机器配置了构建工具版本 29.0.0,然后最新的 Android Gradle 插件 (4.0.0) 正在尝试下载最新的 android 构建工具 (29.0.2)。

我在构建机器中更新了 android 构建工具后,一切正常。

【讨论】:

以上是关于升级到 Gradle 6 和 Android Gradle 插件 4.0.0 无法获取“https://dl.google.com/android/repository/addons_list-3.x的主要内容,如果未能解决你的问题,请参考以下文章

Android升级gradle5的坑+Androidstudio3.4小彩蛋

Android升级gradle5的坑+Androidstudio3.4小彩蛋

Android开发:《Gradle Recipes for Android》阅读笔记(翻译)6.1——推荐配置

错误记录AS 编译报错 ( Android Support plugin 版本太高 | 升级 Android Studio 到最新版本 )

flutter升级AS和gradle后编译出错(No signature of method: build_gbqp6.android())错误

flutter升级AS和gradle后编译出错(No signature of method: build_gbqp6.android())错误