安装 fvm
$ dart pub global activate fvm
Resolving dependencies... (1.4s)
+ args 2.3.0
+ charcode 1.3.1
+ cli_notify 0.0.3
+ cli_util 0.3.5
+ collection 1.15.0
+ console 4.1.0
+ date_format 2.0.4
+ fvm 2.2.6
+ io 1.0.3
+ meta 1.7.0
+ path 1.8.0
+ process_run 0.12.2+2
+ pub_semver 2.1.0
+ source_span 1.8.1
+ string_scanner 1.1.0
+ synchronized 3.0.0
+ term_glyph 1.2.0
+ tint 2.0.0
+ vector_math 2.1.1
+ yaml 3.1.0
Downloading fvm 2.2.6...
Downloading vector_math 2.1.1...
Downloading process_run 0.12.2+2...
Building package executables... (1.2s)
Built fvm:main.
Installed executable fvm.
Activated fvm 2.2.6.
安装完后,可自定义相关配置,详见 官方文档,但建议保持默认~
安装 Flutter SDK
$ fvm install 2.5.2
Flutter "2.5.2" is not installed.
Installing version: 2.5.2...
Cloning into '/Users/mengxinxin/fvm/versions/2.5.2'...
remote: Enumerating objects: 350302, done.
remote: Total 350302 (delta 0), reused 0 (delta 0), pack-reused 350302
Receiving objects: 100% (350302/350302), 172.16 MiB | 6.50 MiB/s, done.
Resolving deltas: 100% (269095/269095), done.
Updating files: 100% (5957/5957), done.
HEAD is now at 3595343e20 [flutter_releases] Flutter stable 2.5.2 Framework Cherrypicks (#91047)
Downloading Dart SDK from Flutter engine 6ac856380fa4f66469552ce986edf59f65f7cd68...
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 219M 100 219M 0 0 8671k 0 0:00:25 0:00:25 --:--:-- 13.6M
Building flutter tool...
VersionCheckError: Command exited with code 128: git fetch __flutter_version_check__ stable
Standard error: fatal: unable to access 'https://github.com/flutter/flutter.git/': LibreSSL SSL_connect: SSL_ERROR_SYSCALL in connection to github.com:443
Flutter 2.5.2 • channel stable • https://github.com/flutter/flutter.git
Framework • revision 3595343e20 (3 months ago) • 2021-09-30 12:58:18 -0700
Engine • revision 6ac856380f
Tools • Dart 2.14.3
默认 Flutter SDK
$ fvm global 2.5.2
Flutter "2.5.2" has been set as global
配置环境变量
主要变动为如下地方,其他忽略:
# ~/.bash_profile
export FVM_HOME=$HOME/fvm
export FLUTTER_ROOT=$FVM_HOME/default
并执行 source ~/.bash_profile
以生效改动
配置 Android Studio
如图,把 flutter sdk path 改为 FLUTTER_ROOT
的值(可通过 $ echo $FLUTTER_ROOT
查看),并保存即可
切换全局的默认 Flutter SDK 版本
# 若没有安装过目标版本,需要先安装下
fvm install x.y.z
# 全局切换
fvm global x.y.z
切换特定工程所用的 Flutter SDK 版本
因为要修改 IDE 的配置,所以在此就不推荐了,详见官网文档
注意事项
通过 fvm install x.y.z
新下载的 Flutter SDK,其目录下会少很多文件,
可以通过「随便创建一个 flutter 工程,并运行」的方式来解决,效果如下: