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

执行flutter run失败,Gradle返回退出码1及依赖兼容错误

解决Flutter运行时Gradle构建错误及包兼容问题

问题根源

你遇到的错误是因为preload_page_view 0.1.6和fluro 2.0.3版本过旧,与当前Flutter SDK的API更新不兼容:

  • preload_page_view未适配ScrollMetrics中新增的devicePixelRatio参数
  • fluro 2.0.3调用了RouteSettings已移除/未实现的copyWith方法
  • 附加的StackOverflowError是Gradle内存不足导致

具体修复步骤

1. 替换/升级过时依赖包

处理preload_page_view

该包已多年未维护,建议直接替换为官方或活跃维护的方案:

  • 如果是实现页面预加载:使用官方PageView配合PageController,通过keepPage属性或手动缓存页面状态
  • 如果是轮播场景:替换为carousel_slider等活跃维护的包,在pubspec.yaml中添加:
    carousel_slider: ^4.2.1
    
  • 若必须使用原包:需手动修改缓存中的源码(不推荐),在preload_page_view.dart的copyWith方法中添加devicePixelRatio参数,并在构造时传入该参数

处理fluro

直接升级到最新兼容版本,修改pubspec.yaml:

fluro: ^2.0.5 # 以pub.dev上的最新版本为准

或替换为官方推荐的GoRouter:

go_router: ^12.1.0

2. 执行依赖更新与清理

flutter clean
flutter pub get

3. 解决Gradle StackOverflowError

修改android/gradle.properties文件,增加JVM内存配置:

org.gradle.jvmargs=-Xmx4096M -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8

同时确保android/build.gradle中的Gradle版本与Android Gradle Plugin版本兼容(推荐使用Gradle 7.5+)

4. 重新运行项目

flutter run

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 08:45:34