通过 FVM 管理多个Flutter版本

5,049 阅读2分钟

Official Doc: fvm | Flutter Version Management
FVM version: 2.2.4

安装 fvm

以下安装方式任选其一:

  • 通过 dart pub 安装则直接运行
dart pub global activate fvm
  • 通过 homebrew 安装
brew tap leoafarias/fvm
brew install fvm

配置环境变量, 以 zsh 为例

vim ~/.zshrc 添加如下环境变量

export FVM_HOME="$HOME/.fvm"

注意:FVM_HOME 路径是 fvm 管理的 Flutter 的安装位置,不配置默认是用户目录下的 fvm 文件夹, 可以自定义到自己喜欢的.

如需Flutter国内镜像,可添加

export PUB_HOSTED_URL=https://pub.flutter-io.cn
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn

注意:如果你之前已经安装过 Flutter, 需要将之前的 Flutter 相关环境变量删除或注释掉

通过 fvm 安装所需的 Flutter 版本

使用 fvm install version 或 channel

fvm install stable

在不同的工程下应用不同的 Flutter 版本

假设需求为 项目1 使用 stable 版, 项目2 使用 beta 版

一. 在 项目1 根目录执行

fvm use stable

二. 配置 Android Studio 的 Flutter 环境

  1. 使用打开 Android Studio 打开 项目1
  2. 依次打开 Android Studio → Preferences→Languages & Frameworks→Flutter
  3. Flutter SDK path选择路径(.../.fvm/versions/stable)
  4. 点击 Apply → OK
  5. 重启Android Studio

三. 配置 VSCode 的 Flutter 环境

  1. 打开 settings.jaon (可以通过快捷键 command+shift+p 输入 open settings 打开设置文件)
  2. 将下列代码加到文件中
{
    ...,
    "dart.flutterSdkPath": ".fvm/flutter_sdk",
    // Remove .fvm files from search
    "search.exclude": {
      "**/.fvm": true
    },
    // Remove from file watching
    "files.watcherExclude": {
      "**/.fvm": true
    }
}

fvm 会在工程中创建一个名为 .fvm 的软连接指向步骤一中应用的Flutter, 因此VSCode中不同项目可以自动适配各自的Flutter版本

在 项目2 重复步骤 一 二

已上 fvm 配置+使用就完成了。

其它

  1. 通过 fvm global version 或 channel 命令可以给全局指定一个 Flutter 版本, 在未指定Flutter版本的项目中使用.
  2. 建议在环境变量中配置给 fvm flutter 配置一个别名,方便后续使用,如 alias f="fvm flutter"