Flutter编译卡在Gradle的踩坑

426 阅读1分钟
  1. 参考这个文章把gradle的源替换一下,最好换成清华的Gradle配置全局替换国内镜像 (2024版) 操作指南_gradle 国内镜像-CSDN博客

    # gradle.properties 示例配置
     
    # 使用清华 Maven 镜像
    repositories.grails.default = https://mirrors.tuna.tsinghua.edu.cn/maven/repos/public
    repositories.grails.default.1 = https://maven.aliyun.com/repository/public
    repositories.grails.default.2 = https://repo.maven.apache.org/maven2
     
    # 其他可能的配置,代理相关的
    # systemProp.http.proxyHost=127.0.0.1
    # systemProp.http.proxyPort=1080
    # systemProp.https.proxyHost=127.0.0.1
    # systemProp.https.proxyPort=1080
    
  1. 打开android/gradle/wrapper/gradle-wrapper.properties 修改成国内源
    #distributionUrl=https://services.gradle.org/distributions/gradle-8.10.2-all.zip
    distributionUrl=https://mirrors.aliyun.com/macports/distfiles/gradle/gradle-8.10.2-all.zip
    
  1. 打开androidStudio 去settings里吧flutter的enable verbose logging勾选上
  1. 编译一下 看一下log里哪个卡住了就去下载下来 kotlin compiler embeddable下载慢的解决办法 - 简书

    大概率就在~/.gradle/caches/modules-2/files-2.1这个目录里,按照文件名全局搜索找

  2. 网上有很多教学要在build.gradle文件替换源的,不知道有没有用,但是如果你遇到Unexpected tokens (use ; to separate expressions on the same line)报错,记得修改成下面的格式,网上给的格式很有可能是旧版的,编译不会给过

            maven { url=uri("https://maven.aliyun.com/repository/public/")}
            maven { url=uri("https://maven.aliyun.com/repository/spring/")}
            maven { url=uri("https://maven.aliyun.com/repository/google/")}
            maven { url=uri("https://maven.aliyun.com/repository/gradle-plugin/")}
            maven { url=uri("https://maven.aliyun.com/repository/spring-plugin/")}
            maven { url=uri("https://maven.aliyun.com/repository/grails-core/")}
            maven { url=uri("https://maven.aliyun.com/repository/apache-snapshots/")}
            maven { url=uri("https://maven.aliyun.com/repository/jcenter/")}
            maven { url=uri("https://maven.aliyun.com/repository/central/")}