在 Debian 中更新 Flutter SDK 的实用步骤
一 推荐方式 使用内置升级命令
- 查看当前版本与渠道:运行 flutter --version 与 flutter channel,确认处于 stable/beta/dev/master 哪个渠道。
- 获取并安装最新版本:执行 flutter upgrade,该命令会拉取对应渠道的最新 Flutter SDK(并同步更新 Dart SDK)。
- 验证与修复环境:执行 flutter doctor -v,按提示安装缺失依赖(如 Android SDK、工具链、证书 等)。
- 说明:若你最初是通过 git clone 安装,flutter upgrade 会在当前渠道的最新提交上执行 git pull 并自动处理升级流程。
二 切换渠道或指定版本
- 切换渠道:先执行 flutter channel beta(或 stable/dev/master),再执行 flutter upgrade,即可升级到该渠道的最新版本。
- 回退或固定版本:进入 Flutter SDK 安装目录(例如 ~/flutter),使用 git reset --hard 回退到指定提交;如需固定版本,也可在项目中约束环境(见下文“版本固定与协作”)。
- 注意:切换渠道/版本会同步切换 Dart SDK,首次可能触发较大的下载量。
三 手动下载替换或重新安装
- 适用场景:无法使用 flutter upgrade(如网络受限、目录权限问题、希望干净替换)。
- 操作步骤:
- 备份现有 SDK(可选):mv ~/flutter ~/flutter_bak_$(date +%F)。
- 下载最新 Linux x64 稳定版 SDK(.tar.xz)并解压到目标目录(如 ~/flutter):
- 示例:tar xf flutter_linux_vX.X.X-stable.tar.xz -C ~/
- 确认 PATH 已包含 $HOME/flutter/bin(如未设置,添加到 ~/.bashrc 或 ~/.zshrc:export PATH=“$HOME/flutter/bin:$PATH”,然后 source ~/.bashrc)。
- 验证:flutter --version 与 flutter doctor。
四 升级后的收尾与常见问题
- 升级依赖:在项目根目录执行 flutter packages get(拉取锁文件)或 flutter packages upgrade(升级到兼容的最新版本)。
- 清理构建缓存:flutter clean,避免旧产物引发异常。
- 常见依赖缺失(Debian):按 flutter doctor 提示安装,例如
- sudo apt-get update && sudo apt-get install -y clang cmake ninja-build pkg-config libgtk-3-dev
- 多版本管理(可选):如需在同一机器管理多个 Flutter 版本,可使用 FVM;在 Android Studio 中通过 Languages & Frameworks → Flutter 指定 FVM 符号链接的绝对路径(如 /absolute-path/.fvm/flutter_sdk)。
五 版本固定与协作建议
- 在项目中固定 Flutter/Dart 版本,减少因升级导致的构建差异:
- 在 pubspec.yaml 的 environment 明确版本范围,例如:
- sdk: “>=2.19.0 <4.0.0”
- flutter: “3.16.0”(或指定精确版本)
- 记录升级前的 commit 或 版本号,便于快速回退;升级后运行 flutter doctor -v 逐项排查问题。