You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

重装Windows后旧Flutter项目无法在安卓设备/模拟器运行求助

Flutter旧项目Android端assembleDebug失败排查方案

问题背景

重装Windows系统后,存于独立磁盘的旧Flutter项目仅能在Web端正常运行,Android模拟器/真机执行flutter run -v时出现Gradle任务assembleDebug失败(exit code 1)。当前Gradle版本7.5,flutter doctor检测无异常,已尝试升级/降级Flutter、Gradle,flutter clean、flutter pub repair cache、Android Studio清理缓存等常规方案,问题未解决。

详细报错信息

[        ] BUILD FAILED in 39s
[        ] Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.
[        ] You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.
[        ] See https://docs.gradle.org/8.0.2/userguide/command_line_interface.html#sec:command_line_warnings
[        ] 202 actionable tasks: 5 executed, 197 up-to-date
[        ] Watched directory hierarchies: [D:\Projects\DzApp\android]
[ +639 ms] Running Gradle task 'assembleDebug'... (completed in 40.9s)
[   +2 ms] Exception: Gradle task assembleDebug failed with exit code 1
[   +3 ms] "flutter run" took 43,128ms.
[   +2 ms] 
           #0      throwToolExit (package:flutter_tools/src/base/common.dart:10:3)
           #1      RunCommand.runCommand (package:flutter_tools/src/commands/run.dart:760:9)
           #2      FlutterCommand.run.<anonymous closure> (package:flutter_tools/src/runner/flutter_command.dart:1297:27)
           <asynchronous suspension>
           #3      AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
           <asynchronous suspension>
           #4      CommandRunner.runCommand (package:args/command_runner.dart:212:13)
           <asynchronous suspension>
           #5      FlutterCommandRunner.runCommand.<anonymous closure> (package:flutter_tools/src/runner/flutter_command_runner.dart:339:9)
           <asynchronous suspension>
           #6      AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
           <asynchronous suspension>
           #7      FlutterCommandRunner.runCommand (package:flutter_tools/src/runner/flutter_command_runner.dart:285:5)
           <asynchronous suspension>
           #8      run.<anonymous closure>.<anonymous closure> (package:flutter_tools/runner.dart:115:9)
           <asynchronous suspension>
           #9      AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
           <asynchronous suspension>
           #10     main (package:flutter_tools/executable.dart:90:3)
           <asynchronous suspension>


[ +158 ms] ensureAnalyticsSent: 152ms
[        ] Running 1 shutdown hook
[   +5 ms] Shutdown hooks complete
[        ] exiting with code 1

当前环境信息

Gradle版本

------------------------------------------------------------
Gradle 7.5
------------------------------------------------------------

Build time:   2022-07-14 12:48:15 UTC
Revision:     c7db7b958189ad2b0c1472b6fe663e6d654a5103

Kotlin:       1.6.21
Groovy:       3.0.10
Ant:          Apache Ant(TM) version 1.10.11 compiled on July 10 2021
JVM:          17.0.9 (Oracle Corporation 17.0.9+11-LTS-201)
OS:           Windows 10 10.0 amd64

Flutter Doctor输出

Doctor summary (to see all details, run flutter doctor -v):
[√] Flutter (Channel stable, 3.13.4, on Microsoft Windows [Version 10.0.19045.3930], locale en-GB)
[√] Windows Version (Installed version of Windows is version 10 or higher)
[√] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
[√] Chrome - develop for the web
[√] Visual Studio - develop Windows apps (Visual Studio Community 2022 17.8.4)
[√] Android Studio (version 2022.3)
[√] VS Code (version 1.86.0)
[√] Connected device (4 available)
[√] Network resources

• No issues found!

针对性排查方案

  • 获取详细错误日志:进入项目的android目录,执行./gradlew assembleDebug --stacktrace --info,这会输出Gradle构建的完整错误栈,是定位具体问题(比如依赖冲突、签名配置失效、SDK版本不匹配)的核心依据。
  • 对比配置文件差异:拿能正常运行的新项目和旧项目的android/build.gradle(项目级)、android/app/build.gradle(模块级)做对比,重点检查:
    • compileSdkVersion、minSdkVersion、targetSdkVersion是否与当前Android SDK 34兼容
    • 项目级build.gradle中com.android.tools.build:gradle插件版本是否和Gradle 7.5兼容(推荐7.4.x版本)
    • debug签名配置是否存在路径失效问题(旧系统的签名文件路径可能在新系统中无法访问)
  • 重置Gradle缓存:
    1. 执行cd android && ./gradlew cleanBuildCache
    2. 删除项目根目录下的.gradle文件夹,以及android/.gradle文件夹
    3. 重新执行flutter pub get后尝试flutter run
  • 更新依赖版本:执行flutter pub outdated查看旧项目依赖与当前Flutter 3.13.4的兼容性,逐个升级存在版本冲突的依赖,尤其是涉及Android原生功能的插件(如权限、文件选择类插件)。
  • 验证JDK环境:确认系统JAVA_HOME指向的JDK版本与项目兼容,建议直接使用Flutter自带的JDK(路径为flutter/bin/cache/artifacts/libopenjdk),避免版本不匹配问题。

内容的提问来源于stack exchange,提问作者sovameyn

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 02:57:07