Win10使用fvm管理多个Flutter版本

参考:https://blog.csdn.net/PyMuma/article/details/115298645

1、升级Flutter

由于现在的fvm需要新版Flutter支持,如果已经安装了旧版Flutter,必须升级后才能成功安装fvm。在旧版Flutter环境即使fvm安装完成,运行fvm命令也会闪退。具体步骤如下:

1.1、升级之前,备份原来的(1.22.6)整改Flutter目录r:\Flutter\FlutterSDK\flutter

1.2、打开的CMD窗口,为避免升级报错,修改git缓存值大小:

git config --global http.postBuffer 524288000

1.3、使用代理升级:

git config --global --unset http.proxy

1.4、不用开代理,使用 --force 强制升级:

flutter upgrade --force

速度不错,整个过程大约需要5-10分钟。

另外,可以用git reset,可以指定到某个版本,也可以回退版本

回退版本,进入flutter的目录下,运行指令:git reset --hard commit-id

使用flutter --version 查看版本,此时会自动下载对应版本的Dart

1.5、升级成功后,运行flutter –version监测版本号为:2.10.2

C:\Users\WinUser01>flutter --version

Flutter 2.10.2 • channel stable • https://github.com/flutter/flutter.git

Framework • revision 097d3313d8 (11 days ago) • 2022-02-18 19:33:08 -0600

Engine • revision a83ed0e5e3

Tools • Dart 2.16.1 • DevTools 2.9.2

2、升级成功后,开始下载安装FVM

2.1、由于旧版Flutter路径已经添加到path,

r:\Flutter\FlutterSDK\flutter\bin

r:\Flutter\FlutterSDK\flutter\bin\cache\dart-sdk\bin

所以,只需打开CMD窗口

2.2、在打开的CMD窗口中,运行下面命令:

pub global activate fvm

进行fvm的下载安装,耐心等待,网络不够好的,可能需要一些时间。不用开代理,实际用时2-3分钟。安装之后有提示:

Warning: Pub installs executables into C:\Users\WinUser01\AppData\Local\Pub\Cache\bin, which is not on your path.

You can fix that by adding that directory to your system's "Path" environment variable.

2.3、上述方式安装的fvm默认安装在用户目录下面。安装之后,需要在系统path中添加:C:\Users\WinUser01\AppData\Local\Pub\Cache\bin,才能成功运行fvm命令。

2.4、下载安装完成后,可以修改一下fvm文件缓存地址,以免以后下载的flutter sdk全部都下载C盘,C盘空间很珍贵的。比如,配置系统环境变量FVM_HOME指向r:\Flutter\FlutterSDK\

2.5、默认fvm的下载地址是在C盘,用下面命令修改fvm缓存地址:

fvm config --cache-path r:\Flutter\FlutterSDK\

3、下载安装Flutter SDK

3.1、如果网络条件允许可以直接使用类似fvm install 2.0.1命令进行下载安装。

3.2、建议最好到Flutter中文资源网https://flutter.cn/docs/development/tools/sdk/releases,使用IDM等软件下载压缩包,解压到r:\Flutter\FlutterSDK\文件夹中。

3.3、注意:

A、2.10.2版本。现在的r:\Flutter\FlutterSDK\flutter目录为安装fvm之前的版本,原来为1.22.6,上面已经通过flutter upgrade –force升级到2.10.2。现在只需将其更改为2.10.2即可作为新版本使用;

B、1.22.6版本。1.22.6使用升级之前的备份目录r:\Flutter\FlutterSDK\flutter,只是将目录名改为1.22.6即可

C、2.0.1版本,为新下载版本

3.4、为保证兼容性,需要将系统path中的默认Flutter路径修改为:

r:\Flutter\FlutterSDK\2.10.2\bin

r:\Flutter\FlutterSDK\2.10.2\bin\cache\dart-sdk\bin

若默认Flutter路径修改为1.22.6、或2.0.1,fvm命令都会报错:

C:\Users\WinUser01>fvm list

Can't load Kernel binary: Invalid kernel binary format version.

fvm 2.2.6 doesn't support Dart 2.10.5.

路径修改好后,可以在CMD窗口运行fvm list进行查看。其中1.22.6、2.0.1、2.10.2便是下载的3个版本。

查看flutter目录的版本号,可以打开flutter目录下的version文件进行查看。

4、Flutter SDK使用和版本切换

4.1、在CMD窗口通过fvm list可以查看fvm中已经缓存的所有sdk版本

4.2、在CMD窗口通过fvm use <version>命令切换和使用相应的sdk版本。

注意,使用fvm use命令时一定要在管理员模式下打开,否侧无法切换,会提示权限不够的报错提示:

fvm:Cannot link flutter to dest D:\fvm\versions\2.0.3: symlink D:\fvm\versions\2.0.3 D:\fvm\current: A required privilege is not held by the client.

4.3、通过fvm current查看当前使用的sdk版本。

4.4、切换完成后使用fvm flutter doctor。因为每个版本不一样,所以可能需要重新下载运行环境。

4.5、配置之后,原有的flutter命令前全部加上 fvm 例如:

fvm flutter build apk

5、Android Studio中Flutter项目的版本设置

5.1、注意,原来使用旧版r:\Flutter\FlutterSDK\flutter\的项目,都需要手动修改使用的flutter版本目录,比如R:\Flutter\FlutterSDK\1.22.6。

5.2、如果指向R:\Flutter\FlutterSDK\1.22.6,报安装的版本没有完成,只需双击运行其中的:

r:\Flutter\FlutterSDK\1.22.6\bin\dart.bat

该命令会自动下载安装相关组件到r:\Flutter\FlutterSDK\1.22.6\bin\cache\,当然,也可以拷贝使用原来的r:\Flutter\FlutterSDK\1.22.6\bin\cache\目录。

运行完成后便不会再报错。不过,使用新的Flutter版本,第一次编译需要下载一些组件,需要耐心等待。

5.3、原来的旧版项目选择Flutter 1.22.6编译运行成功,r:\FlutterProject\FlutterProject51-hyzp_ybqx\hyzp_ybqx\

5.4、需要新版flutter支持的项目选择Flutter 2.0.1编译运行成功(选择Flutter 2.10.2编译失败),r:\FlutterProject\FlutterProject55-plugin_learn\flutter_scankit-1.2.3\

Win10使用fvm管理多个Flutter版本的更多相关文章

  1. 【转】SVN管理多个项目版本库

    转载地址:http://blog.163.com/zhangxuemin_zy/blog/static/10178565520115704031799/ SVN管理多个项目版本库:   安装SVN服务 ...

  2. Win10上安装Keras 和 TensorFlow(GPU版本)

    一. 安装环境 Windows 10 64bit  家庭版 GPU: GeForce GTX1070 Python: 3.5 CUDA: CUDA Toolkit 8.0 GA1 (Sept 2016 ...

  3. 兼容性测试中如何切换和管理多个JDK版本

    本文由作者邹珍珍授权网易云社区发布. 一.测试背景: 项目对外提供JAR包,需要测试该JAR包对不同JDK版本(1.6至1.9版本)的兼容性.下面主要介绍在兼容性测试中,JDK多版本共存时如何配置环境 ...

  4. SVN管理多个项目版本库 (windows,linux 通用)

    SVN管理多个项目版本库: . 安装SVN服务器软件,路径: C:\Program Files\Subversion . 在D盘创建svn根目录D:\SVN-CM . 在D:\SVN-CM下创建SVN ...

  5. Windows下安装nvm管理多个nodejs版本

    平常在工作中难免会有node版本的要求,下面介绍一种利用nvm工具管理多个node版本的方法 下载安装 Github: Download nvm-windows --- nvm-setup.zip 程 ...

  6. win10下通过Anaconda安装TensorFlow-GPU1.3版本,并配置pycharm运行Mnist手写识别程序

    折腾了一天半终于装好了win10下的TensorFlow-GPU版,在这里做个记录. 准备安装包: visual studio 2015: Anaconda3-4.2.0-Windows-x86_64 ...

  7. 使用Github管理项目代码的版本

    作为开源代码库以及版本控制系统,Github拥有140多万开发者用户.随着越来越多的应用程序转移到了云上,Github已经成为了管理软件开发以及发现已有代码的首选方法. 在Git中并不存在主库这样的概 ...

  8. Win10系统下编译GDAL1.9.2版本

    环境说明: 1.Win10企业版.64位: 2.VS2012旗舰版: 3.GDAL1.9.2 GADL编译 1.解压GDAL压缩包至F:\GDAL\gdal-1.9.2: 2.设置GDAL编译后安装目 ...

  9. Python包管理工具和多版本环境管理

    1. Python包管理工具 在安装Python包的过程中,经常涉及到distutils.setuptools.distribute.setup.py.easy_install.easy_instal ...

随机推荐

  1. 双webview模式,子窗口打不开或者无法切换

    iOS 真机调试时,发现window.open 无效.可以结合plusReady里面不执行一起参考,博主在当时遇到这个问题只查询了资料,而后并没有来得及自己亲自验证以下方法的可行性.来日再遇上mui的 ...

  2. css:音乐唱片机随着播放暂停而旋转暂停

    唱片机由两部分组成,一个是磁针,另一个是唱片 1. 先完成磁针随着播放按钮进行是否在唱片上的切换 原理:将播放暂停状态存入布尔值isbtnShow中,根据isbtnShow的值切换磁针的class. ...

  3. Java实现http大文件流读取并批量插入数据库

    1.概述 请求远程大文本,使用流的方式进行返回.需要设置http链接的超时时间 循环插入到List中,使用mybatis-plus批量插入到mysql中 2.需求 两台服务器 大文件放到其中一台服务器 ...

  4. model.apply(fn)或net.apply(fn)

    详情可参考:https://pytorch.org/docs/1.11/generated/torch.nn.Module.html?highlight=torch%20nn%20module%20a ...

  5. 支持向量机SVM(一):基本概念、目标函数的推导

    本文旨在介绍支持向量机(SVM)的基本概念并解释SVM中的一个关键问题: 为什么SVM目标函数中的函数间隔取1? 一.分类问题 给定N个分属两类的样本,给出一个决策边界使得边界一侧只含一种样本(如下图 ...

  6. 『忘了再学』Shell流程控制 — 36、for循环介绍

    目录 1.for循环介绍 2.示例 语法一举例: 语法二举例: 3.for循环总结 4.练习:批量解压缩脚本 方式一:批量解压缩 方式二:批量解压缩 1.for循环介绍 for循环是固定循环,也就是在 ...

  7. 3D可视化在化工领域的应用及案例分享

    2020年,中办.国办印发的<关于全面加强危险化学品安全生产工作的意见>中重点提出应加快"推进化工园区安全生产信息化.智能化平台建设,实现对园区内企业.重点场所.重大危险源.基础 ...

  8. 安装ImageMagick7.1库以及php的Imagick扩展

    由于ImageMagick7以下不支持heic等图片格式,所以重新安装了ImageMagick7.1版本支持heic格式,并写此文章记录一下. 如果安装过程中遇到一些未知的错误,https://ima ...

  9. 基于thinkphp6 layui的优秀极速后台开发框架推荐

    很多时候我们在做项目开发的时候,苦于没有好一点的轮子,自己动手开发的话,太耗费时间了,如果采用VUE的话,学习成本跟调试也比较麻烦, 而且有时候选用的东西甲方也不太容易接受,现在给大家介绍一款优秀的极 ...

  10. application.yml 常用基本配置

    前言 在平时的项目开发中,自己对application.yml的配置的写法较为熟悉,现在自己就application.yml常用的配置进行总结如下: 1.Tomcat 配置 server: #设置请求 ...