魏晓东 发表于 6 天前

Android Studio Gradle Sync timeout

https://i-blog.csdnimg.cn/direct/2b3c28b09425411eb476658c6c6cece2.png
 使用Android Studio开辟Android应用步调时,Gradle sync timeout常用的处理方法有:


[*]增长超时设置:在 gradle.properties 文件中增长超时设置,给 Gradle 更长时间完成同步
[*]使用国内镜像:通过设置阿里云、华为或腾讯云的 Maven 仓库镜像,解决远程仓库访问慢的题目
[*]清除缓存并重新同步:清除 Gradle 缓存,并逼迫重新下载所有依靠
[*]查抄署理设置和网络连接:确保署理设置精确,或者尝试使用不带署理的网络环境
[*]查抄Gradle和AGP版本:确保 Gradle 和 Android Gradle 插件(AGP)的版本是兼容的
具体使用哪种方法见下边。

Gradle sync timeout的常见解决方法

Gradle sync timeout通常是因为Gradle无法在规定的时间内完成同步过程,大概是由于网络连接题目、Gradle设置题目、署理设置等原因引起的。以下是一些常见的解决方法:
1.增长Gradle同步超时时间

对于网络连接慢或者Gradle下载依靠需要更多时间这种情况,可以试试增长Gradle超时时间。修改项目根目录的gradle.properties文件中增长以下设置,来延长同步超时设置:
systemProp.org.gradle.daemon.idletimeout=60000
org.gradle.internal.http.connectionTimeout=60000
org.gradle.internal.http.readTimeout=60000 这些设置可以让Gradle更长时间地等待网络哀求完成,克制在网络慢时超时。
2.查抄Gradle设置和依靠源

如果是因为Gradle无法连接到远程仓库导致的同步失败,可以查抄是否设置了精确的仓库和网络地址。常见的设置仓库包罗:


[*]Maven Central : https://repo.maven.apache.org/maven2 
[*]JCenter: https://jcenter.bintray.com 
[*]Google: https://maven.google.com/  
在build.gradle文件中设置仓库,如下:
repositories {
    google()
    mavenCentral()
    jcenter()
} 3.使用国内镜像

位于中国大陆,大概会因为访问远程仓库速度慢而导致超时。可以使用一些国内的Gradle镜像来加速下载。
常用的国内镜像源有:


[*]阿里云镜像 : https://maven.aliyun.com/repository/public/
[*]华为云镜像: https://mirrors.huaweicloud.com/repository/maven/
[*]腾讯云镜像:https://mirrors.cloud.tencent.com/maven/ 
[*]官方下载地址: https://services.gradle.org/distributions/ 

例:使用阿里云镜像
在build.gradle或gradle.properties中设置阿里云的Maven镜像。


[*]在gradle.properties中设置
#阿里云镜像加速
systemProp.gradle.daemon=true
systemProp.gradle.parallel=true
org.gradle.parallel=true

#配置国内Maven仓库
org.gradle.plugin.repository=https://maven.aliyun.com/repository/public/


[*]在gradle.properties中设置
repositories {
    maven {
      url "https://maven.aliyun.com/repository/public/"
    }
} 4.清除Gradle缓存并重新同步

有时Gradle的缓存大概破坏或者有不完成的依靠,这时可以尝试清除Gradle缓存,并重新同步项目。
清除Gradle缓存:


[*]方法一  Android Studio中从界面菜单栏清除缓存 
   File -> Invalidata Caches / Restart -> Invalidate and Restart


[*]方法二  Windows直接办动删除Gradle缓存
     Windows体系Gradleh缓存路径是:C:\Users\<your-username>\.gradle\caches

逼迫重新下载所有依靠:
逼迫Gradle重新下载所有依靠,实行命令:
https://i-blog.csdnimg.cn/direct/9b7821bd78134bcb9f7e4857d469f553.png
5.查抄署理设置

如果使用的署理服务器,大概需要查抄署理设置是否精确,尤其是在有网络限制的环境中(例如公司或学校网络)。
可在gradle.properties文件中添加署理设置:
# 配置 HTTP 和 HTTPS 代理
systemProp.http.proxyHost=proxy.example.com
systemProp.http.proxyPort=8080
systemProp.https.proxyHost=proxy.example.com
systemProp.https.proxyPort=8080 或者在build.gradle中设置署理:
allprojects {
    repositories {
      maven {
            url "https://repo.maven.apache.org/maven2"
            credentials {
                  username = project.findProperty("repo.user") ?: "" password = project.findProperty("repo.password") ?: "" } } } } 6. 查抄 Gradle 版本

Gradle 本身的版本大概会影响同步速度。如果你的 Gradle 版本过旧,或者与 Android Studio 不兼容,大概会导致同步题目。
更新Gradle版本:
gradle-wrapper.properties文件,如下
distributionUrl=https\://services.gradle.org/distributions/gradle-7.0-all.zip 可以将 gradle-7.0-all.zip 替换为适合的版本。
更新Android Gradle插件(AGP)版本:
如果 Gradle 的版本不匹配,大概需要更新 Android Gradle 插件版本。可以在 build.gradle 文件中更新:
classpath 'com.android.tools.build:gradle:7.0.0'
确保你使用的 Android Gradle 插件版本与 Gradle 版本兼容。
7.查抄网络连接

有时,网络连接本身的题目会导致 Gradle 同步超时。你可以查抄以下几项:


[*]DNS 设置:确保你的 DNS 设置没有题目,可以尝试更换为更可靠的 DNS 服务器,如 Google 的 DNS 8.8.8.8。
[*]防火墙和安全软件:某些防火墙或安全软件大概会阻止 Gradle 的网络连接。可以尝试关闭防火墙或禁用一些安全软件,看看是否有改善。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: Android Studio Gradle Sync timeout