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

Flutter命令行构建自动升级依赖,如何阻止该行为?

解决Flutter命令行自动升级依赖的问题

1. 把依赖版本锁死成精确值

直接修改pubspec.yaml里的依赖声明:

  • 把带^的宽松版本(比如^2.5.0)改成精确版本号2.5.0,这样flutter pub get只会拉取你指定的这个版本,不会自动往上升级。
  • 如果是间接依赖(不是你自己在pubspec里添加的)被升级,就用dependency_overrides强制锁定版本,示例:
dependency_overrides:
  # 替换成实际的间接依赖名和目标版本
  shared_preferences: 2.2.2

不管主依赖的版本约束如何,都会强制使用你指定的这个版本。

2. 靠pubspec.lock锁定所有依赖

第一次执行flutter pub get后生成的pubspec.lock文件,会记录当前所有依赖(包括间接依赖)的精确版本。只要这个文件存在,后续执行flutter pub get时会直接读取lock里的版本,不会自动升级。

  • 不要删除或随意修改这个文件,把它加入Git等版本控制工具,确保团队协作时所有人使用同一套依赖版本。

3. 给命令加参数临时阻止升级

如果只是某次执行命令不想触发依赖升级,直接添加--no-upgrade参数即可:

flutter pub get --no-upgrade
flutter build release --no-upgrade

这个参数会强制使用pubspec.lock里的版本,不会去检查和更新任何依赖。

4. 确认Android Studio的同步设置

再检查下AS的配置:File > Settings > Languages & Frameworks > Flutter > Pub,查看是否勾选Use pub get for dependencies sync。如果勾选了,AS的依赖同步逻辑会和命令行一致;若想让AS也保持lock版本,确保同步操作后pubspec.lock没有被改动即可。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.01 07:42:15