如何在Mac上设置多个Flutter版本?

7

我希望在我的Mac上安装Flutter v1.22.6和v2.0.5。

目前,我已经在我的Mac上安装了v1.22.6,并设置了其路径。

我想要这样的设置:当我输入flutter doctor命令时,它对应于v1.22.6;当我输入flutter2 doctor命令时,它对应于v2.0.5。

enter image description here

我是终端的新手,请问有人可以帮助我吗?现在flutter doctor只对应于v1.22.6。我尝试为flutter2设置路径,但显示为未找到命令。

enter image description here


你需要安装两个版本的Flutter解决什么问题呢?从1.x 到 2.x,实际上并没有太多与之不兼容的变化。还是说你仍然有使用旧版Dart的项目?如果是这样,只需要记得在pubspec.yaml中设置适当的minsdk以使用现代的Dart(2.12.0),或者使用旧版Dart(2.10.0)。 - Randal Schwartz
3个回答

12

FVM(Flutter版本管理)

使用FVM(Flutter版本管理)将是一个最佳解决方案。

简而言之,FVM是一个开源的依赖管理工具,用于为特定项目引用特定的Flutter SDK版本,即每个项目可以使用不同的Flutter SDK版本。

安装

运行以下命令:

dart pub global activate fvm

或者,使用Homebrew
brew tap leoafarias/fvm
brew install fvm

使用方法

  • 安装SDK:

通过运行以下命令安装最新稳定版的Flutter:

fvm install stable

或者,你可以指定版本,如下所示:
fvm install [version_number]

例如,如果你想要除了3.0.0版本之外的最新版本,你应该运行第一个和第二个命令(如fvm install 3.0.0)。
  • 在项目中使用SDK:

在终端中,切换到你的项目目录,并运行以下命令:

fvm use stable

stable可以被指定的SDK版本替代。此时,每个项目将根据fvm use的版本号拥有自己的Flutter SDK。

然而,你也可以通过运行以下命令为所有项目使用相同的版本:

fvm global stable
  • "如何知道我正在使用某个项目的哪个版本?"

在终端中,切换到您的项目目录,并运行以下命令:

fvm doctor

或者,由于您能够通过使用的fvm SDK运行Flutter命令,您也可以运行
fvm flutter --version

有关FVM的更多信息,请查看FVM文档

1
谢谢!这个答案应该被标记为最佳答案,它以更好的方式解决了问题。 - Javier Gomez
1
只是提一下,你写的是brew install nvm。这是正确的吗?还是应该是brew install fvm - undefined
感谢 @Daniel。没错,应该是 brew install fvm,已更新。 - undefined

9

你需要创建 别名

  1. 进入家目录:

    cd ~

  2. 使用vi打开.bash_profile文件:

    vi .bash_profilevim .bash_profile

  3. 添加别名 (按i键):

    alias flutter2="~/place_of_folder/flutter2/bin/flutter"

  4. 保存文件 (按Esc键, 输入:wq, 回车)

  5. 重启终端


这个选项对我起作用了。 - A.K.J.94
那么,当需要时,如何从一个版本切换到另一个版本呢? - Himanshu

3
打开终端并输入:echo $SHELL 检查你使用的是什么SHELL。 如果你使用的是 ZSHELL 而不是 BASH,那么只需要执行以下1个步骤即可完成此任务(如果是BASH,请参考 @Adelina 在本主题中的内容):
  • 打开终端并输入:nano ~/.zshrc
  • 对于我来说,我使用的是2个版本:2.10.5和3.7.x。对于2.10.5版本,我不需要添加别名,默认为flutter doctor 。对于3.7.x版本,我只需添加1个别名“flutter3”,如下所示:
  export PATH="$PATH:/Users/macbookpro/development/flutter/bin"

  export JAVA_HOME=$(/usr/libexec/java_home)

  export PATH="$PATH:/Users/macbookpro/development/flutterV3/bin"

  alias flutter3="/Users/macbookpro/development/flutterV3/bin/flutter"
在 Mac 上添加上述 4 行代码,分别对应你所安装的两个版本 Flutter。按下 Ctrl + O 键,然后按 Enter 键保存 ZSHELL 文件,最后按下 Ctrl + X 键关闭 ZSHELL 文件。
返回到当前终端会话,重新启动终端或重启 Mac,并输入 flutter3 doctorflutter doctor 进行测试。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接