fvm作为Flutter的包管理工具,能让我们在不同版本的Flutter之间自由切换,就像nvm管理node一样。
1、安装方式
fvm 安装方式比较简单,Mac中一般通过homebrew安装
brew tap befovy/taps
brew install fvm
接下来配置环境变量:
打开.bash_prifile,
vim ~/.bash_profile
并将一下全局变量添加到里面
export FLUTTER_ROOT=/opt/fvm/current
export FVM_HOME=/opt/fvm
export PATH=/Users/wf/Library/Application\ Support/fvm/current/bin:$PATH
保存,退出后让修改立即生效:
source ~/.bash_profile
如果以前在电脑中装了flutter包,可以将包import到fvm 里面:
fvm import
安装其他包:
fvm install
version 是你要安装的版本号
设置当前使用的版本号:
fvm use
如果某个项目要使用固定的版本号,可以给某个项目单独设置flutter版本:
fvm use --local
我在使用上面这个命令时候出现一些问题:版本切换到新版本,但是运行代码还是用的旧版本,然后就报错了,不知道各位看官有没有遇到过,最终我是硬生生的把旧版本remove掉,然后重新安装的旧版本,然后使用全局切换版本的命令fvm use <版本号>
来控制版本。
使用fvm current
查看当前使用的版本号。
最后是修改Androidstudio的Flutter路径:
dart包路径一般会自动带出来,如果没有,手动改一下。
2、遇到的问题
1、在使用fvm install 1.20.3
安装的时候报错:
fvm: Command 'git' exited with error: chdir /Users/wf/Library/Application Support/fvm/versions/1.20.3: no such file or directory
我的解决办法是干脆直接把旧的Flutter项目import过来,不用install的方式,不知道其他小伙伴有没有其他解决方式
2.在import引入现有包的时候没有权限,导入fvm文件夹失败,而且原来的包也没有了,因为fvm 在我的电脑默认安装在 /Users/wf/Library/Application Support/fvm
路径,访问/Users/wf/Library/Application Support/
需要sudo 权限,直接把fvm 文件夹权限放开:
sudo chmod -R 777 /Users/wf/Library/Application\ Support/fvm
tip:如果不把这个文件夹权限放开,而是直接使用sudo 执行import命令,后面工程访问这个目录还是访问不到,打开项目后就会看到全是报错。
3.再次使用fvm install 安装新版本的时候居然不报文件找不到的错误了,心中暗喜,但是苦苦登录十几分钟就在终于要下载完毕的时候,又报出一个git error 128 的错误(忘记截图了),最后我的解决办法是直接在Flutter官网把最新版本的2.0.4压缩包下载到本地解压,然后使用fvm import 的方式导入。
针对以上问题,小伙伴们有更好的解决方案,欢迎留言。
(网上另一种fvm安装方法可参考:https://blog.csdn.net/phunxm/article/details/117317291)