android - 升级到 Gradle 6 和 Android Gradle 插件 4.0.0 无法获取“https://dl.google.com/android/repository/addons_list-3.xml”
问题描述
我为我的 Android 项目配置了 CI。
项目所在的服务器无法访问Internet。所以,我得到这个错误:
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
但我无法确认这是原因。
解决方案
原来我的 CI 设置使用的构建机器配置了构建工具版本 29.0.0,然后最新的 Android Gradle 插件(4.0.0)试图下载最新的 android 构建工具(29.0.2)。
一旦我更新了构建机器中的 android 构建工具,一切正常。
推荐阅读
- swift - 如何使用swift以编程方式根据数据设置滚动视图的高度
- sql - psql NOW() 获取不同的时区
- powershell - 具有强制和可选参数的函数
- apache - 有没有在 Apache Windows 上设置 ssl 证书的地方?我发现错误 SSLPassPhraseDialog builtin is not supported on Win32
- flutter - 如何使用颤振 http 包设置基本 url 类?
- python - 尝试嵌入 TkInter 时,Matplotlib 3D-plot 不是交互式的或在附加窗口中
- python - 如何在python中通过IP地址跟踪位置
- unity3d - Unity 3D 控制台说:语法错误,“(”预期
- python-3.x - 在python中将文本转换为语音时出错
- spotify - 有没有办法在本地与 Spotify 客户端进行通信?