Flutter 编译卡顿解决方案

1、定位问题原因

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

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

复制代码
   flutter doctor -v,

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

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

arduino 复制代码
flutter run --verbose

打印出详细的构建过程。

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

终端打开

bash 复制代码
 ls   ~/.gradle/wrapper/dists/

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

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

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

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

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

rust 复制代码
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 目录:

bash 复制代码
cd android

执行 Gradle 构建命令:

bash 复制代码
./gradlew assembleDebug --stacktrace

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

相关推荐
张筱竼44 分钟前
Android开发中的MVC、MVP与MVVM详解
android
zeqinjie3 小时前
Skills-Flutter 内测泄漏审核
前端·flutter·app
阿巴斯甜3 小时前
必看4
android
Carson带你学Android4 小时前
Android 17 最后一个 Beta 发布,7 件事必须现在做
android·ai编程
ooseabiscuit4 小时前
Laravel 9.x重磅升级:PHP8新特性全解析
android
嵌入式×边缘AI:打怪升级日志4 小时前
转换模块(十二):实现 RGB 转 RGB + 项目整合与上机实验
开发语言·ios·swift
唐诺4 小时前
IOS学习路线计划
ios
帅次4 小时前
深入 MaterialTheme:掌握 ColorScheme 与 Typography 的设计核心
android·kotlin·gradle·android jetpack·compose
for_ever_love__4 小时前
UI学习:无限轮播视图
学习·ui·ios·objective-c