Flutter 编译卡顿解决方案

3 阅读2分钟

1、定位问题原因

在动手解决前,先精确找到问题根源。

运行诊断命令,在终端执行 

   flutter doctor -v,

检查 Flutter、Android SDK 等各项配置,并给出具体建议。

查看详细日志,在终端执行 

flutter run --verbose

打印出详细的构建过程。

 2、配置,解决因网络问题导致的依赖下载失败

  截屏2026-04-20 17.35.08.png

终端打开

 ls   ~/.gradle/wrapper/dists/

看看是否有对应的版本的gradle,没有下载后放在对应位置。

一般到这一步就解决问题了。

Gradle 配置国内镜像,修改项目配置文件:

打开你 Flutter 项目下的 android/build.gradle 文件。

替换镜像源,找到 buildscript 和 allprojects 两个代码块,将其中的 repositories 部分替换为下面的阿里云镜像地址。

buildscript {

    repositories {

        maven { url 'https://maven.aliyun.com/repository/google' }

        maven { url 'https://maven.aliyun.com/repository/jcenter' }

        maven { url 'https://maven.aliyun.com/nexus/content/groups/public/' }

        maven { url 'https://maven.aliyun.com/repository/central' }

        maven { url 'https://maven.aliyun.com/repository/public' }

        maven { url 'https://maven.aliyun.com/repository/gradle-plugin' }

    }

    // ... 其他配置

}

  


allprojects {

    repositories {

        maven { url 'https://maven.aliyun.com/repository/google' }

        maven { url 'https://maven.aliyun.com/repository/jcenter' }

        maven { url 'https://maven.aliyun.com/nexus/content/groups/public/' }

        maven { url 'https://maven.aliyun.com/repository/central' }

        maven { url 'https://maven.aliyun.com/repository/public' }

        maven { url 'https://maven.aliyun.com/repository/gradle-plugin' }

    }

}

3、清理,移除损坏的缓存文件

网络下载失败或进程中断可能导致缓存损坏。

  • 清理项目:在项目根目录执行 flutter clean。

  • 删除 Gradle 缓存:手动删除以下目录:

  • 项目下的 android/.gradle 和 android/build 用户目录下的 ~/.gradle/caches。

  • 获取依赖:执行 flutter pub get 重新获取项目依赖。

4、检查,确保开发环境兼容

环境配置不当也会引发问题。

  • 检查 Java 版本:Flutter 推荐使用 Java 11。在终端执行 java -version 检查版本,如果不符请及时更新并正确设置 JAVA_HOME 环境变量。
  • 检查 Gradle 版本:打开 android/gradle/wrapper/gradle-wrapper.properties 文件,确认 distributionUrl 使用的 Gradle 版本与你的 Flutter SDK 兼容。
  • 更新 Flutter SDK:执行 flutter upgrade 将 SDK 更新到最新的稳定版。

5、在 Android 目录下直接运行 Gradle

如果以上步骤仍未解决,可以跳过 Flutter 工具链,直接在 Android 项目目录下手动运行 Gradle,能获取更精确的错误。

进入项目的 android 目录:

cd android

执行 Gradle 构建命令:

./gradlew assembleDebug --stacktrace

分析控制台输出的错误信息,根据提示进行针对性修复。