Flutter多版本管理FVM
Flutter 版本更新太快了 , 导致很多项目的运行依赖也不稳定 , 轻度维护的项目很容易由于插件和 Flutter 版本的不兼容而运行不起来.这里主要讲解下如果安装 FVM 用来管理各种 Flutter 版本
Windows 和 Mac 有多种方式安装 ,这里主要讲解通过 dart 环境安装 , 因为其他环境比如 Mac 用 brew 来安装这种方式在 Mac M4 下又会报其他错误,导致安装就很费时 , 这里统一都通过 dart 来安装
首先就需要电脑本身有dart版本,我这边本来用的 Flutter 3.27.4 ,因此就有环境
1 | dart pub global activate fvm |
执行后 , fvm执行程序就下载到了 dart 的 Pub Cache 目录下
Windows 默认在
C"\Users\用户\AppData\Local\Pub\Cache\bin下
很多教程直接让把这个目录配置到环境变量下,然后直接运行fvm命令,__但是实际是不方便的! 因为实际开发过程中会很多次执行清除缓存的命令 flutter pub cache clean, 若执行了 fvm 就没了,又得重新执行命令下载 __ . 所以更好的办法是将这个fvm粘贴到一个自定义的目录 , 然后配置到环境变量
然后可以执行 fvm --version 查看是否安装成功 , 再将存储flutter版本的缓存目录改到自定义盘 (不然就是C盘杀手)
1 | # 更改缓存路径 |
这里再查看可安装的版本
1 | fvm releases |
然后安装某个版本
1 | fvm install 3.35.7 |
这里最好终端魔法上网,否则会很慢, 因为默认走的是 pub 海外站点
然后切换全局当前版本
1 | fvm global 3.35.7 |
然后会提示需要将环境变量中已有的flutter环境变量改为切换的flutter的环境变量 , Windows应该是自动替换了 , Mac需要手动替换 .
这里注意切换之前不要盲目删除旧的sdk目录 , 不然通过dart安装的fvm将无法运行
也可以指定项目局部flutter版本 , 这样就会在项目下生成一个.fvm目录 , 然后sdk直接下载到里面 , 个人不建议这样, 会导致过多重复的flutter版本 , 不如全局切换使用来的好
还有如果使用的是 IDEA 或者 AndroidStudio 开发的 Flutter , 这里终端执行的 Flutter 命令和编辑器按钮执行的命令SDK需要保持统一 , 编辑器在 File->Setting->搜索Flutter 将SDK路径修改为需求的Flutter版本路径 , 这个设置是项目维度的 , 比如重新创建项目 , 如果SDK不一致则需要重新指定



