热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

FVMMac上管理Flutter多版本的神奇

FVM-Mac上管理Flutter多版本的神奇-随着flutter2.0的发布,相信很多同学都是激动的心,颤动的手,想快速尝试一波,做一个吃螃蟹的人,本人也是怀揣着这样的心情,头

随着flutter2.0的发布,相信很多同学都是激动的心,颤动的手,想快速尝试一波,做一个吃螃蟹的人,本人也是怀揣着这样的心情,头脑一热的将本地的flutter版本更新到2.0了,螃蟹吃完了,但是回到项目代码时,一打开,一片红,各种报错,我滴个乖乖~,又赶紧将版本回退到之前的稳定版本!

本着又想吃螃蟹,又想兼顾公司项目代码的想法,在这里介绍一款flutter的版本管理神器 FVM,这里安装的话,我推荐使用Homebrew进行fvm的安装。

  1. 如果你的电脑没有Homebrew 的话,可以去它的官网查看安装方法,简单来说也就两步
  • 安装brew: git clone git://mirrors.ustc.edu.cn/homebrew-core.git//usr/local/Homebrew/Library/Taps/homebrew/homebrew-core --depth=1
  • 安装brew cask: git clone git://mirrors.ustc.edu.cn/homebrew-cask.git//usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask --depth=1
  1. 通过brew安装 fvm:
    // 添加homebrew tap
    brew tap xinfeng-tech/fvm
    
    // 安装 fvm
    brew install fvm

3.安装成功之后,就是配置你的环境变量到脚本工具中: 由于mac的脚本工具有 .bash.zsh 两个,一般默认的是 bash,具体切换,可以在这里参看苹果官网的切换方法

  • 如果是.bash作为默认Shell,可以在终端中使用 open -e .bash_profile 命令打开文件
  • 如果是.zsh作为默认Shell,可以在终端中使用 open .zshrc 命令打开文件

将下面的命令添加到你的Shell文件中进行配置即可

    export PUB_HOSTED_URL=http://mirrors.cnnic.cn/dart-pub
    export FLUTTER_STORAGE_BASE_URL=http://mirrors.cnnic.cn/flutter 
    export FVM_DIR="$HOME/.fvm"
    source "/usr/local/opt/fvm/init.sh"

关于fvm的基本使用

  1. 查看fvm的版本
    fvm --version 

2.使用fvm,安装某个flutter版本,例如安装 flutter 2.0

    fvm install 2.0.0

3.查看fvm当前安装的flutter版本,由于我本地安装了 1.22.4 和 2.0.1,所有我的本地有两个flutter版本

    ~ apple$ fvm list
    current => 1.22.4-stable
    installed versions:
    1.22.4-stable => 1.22.4
    2.0.1-beta => 2.0.1
    default => 1.22.4
    latest => 1.22.4

4.针对不同的项目设置不同的 Flutter 版本

  • 在终端,cd 到项目中
  • 使用fvm use 1.22.4 --local 命令进行配置,这里设置项目的flutter版本为,1.22.4

到此,就已经完成 fvm 的安装和基本使用

关于使用 Android Studio 进行项目开发的配置

在使用 Android Studio 时,我们之前的关于 flutterdart 的配置,应该是配置的本地 flutter 版本,所以在这里还需要配置成跟随 fvm 版本的切换而变化
  1. 配置 Android Studio 的 Flutter 版本
  • 打开 Android Studio 工具,找到 偏好设置,在搜索框中搜索 flutterLanguages & Frameworks 中,选择 Flutter,在 SDK 下面有一个 Flutter SDK path,在最右边有一个选择路径的按钮,点击之后弹出,文件目录,一般你的 fvm 是安装在 /Users/apple/ 文件路径下,然后选择 .fvm -> current 文件,点击 Open 保存。如果在 /Users/apple/ 文件下,没有 .fvm 的话,可以尝试使用 Command + Shift + . 的方式显示隐藏文件,从而找到 .fvm 文件

  1. 配置 Android Studio 的 Dart 版本
  • 同样方式在 Languages & Frameworks 中,选择 Dart,在 SDK 下面找到 Dart SDK path,将你的 path 配置成 /Users/apple/.fvm/current/bin/cache/dart-sdk

至此,关于 Android Studio 开发工具也配置成功,现在你就可以随意在本地切换 Flutter 的版本,然后使用开发工具进行开发了

补充!!!!

最好将Shell脚本中的 flutter 路径配置成 .fvm/current,例如,我的本地配置是这样!!

不急不躁,好好学习,天天向上!!!


推荐阅读
  • 本文详细介绍了git常用命令及其操作方法,包括查看、添加、提交、删除、找回等操作,以及如何重置修改文件、抛弃工作区修改、将工作文件提交到本地暂存区、从版本库中删除文件等。同时还介绍了如何从暂存区恢复到工作文件、恢复最近一次提交过的状态,以及如何合并多个操作等。 ... [详细]
  • 树莓派语音控制的配置方法和步骤
    本文介绍了在树莓派上实现语音控制的配置方法和步骤。首先感谢博主Eoman的帮助,文章参考了他的内容。树莓派的配置需要通过sudo raspi-config进行,然后使用Eoman的控制方法,即安装wiringPi库并编写控制引脚的脚本。具体的安装步骤和脚本编写方法在文章中详细介绍。 ... [详细]
  • CentOS7.8下编译muduo库找不到Boost库报错的解决方法
    本文介绍了在CentOS7.8下编译muduo库时出现找不到Boost库报错的问题,并提供了解决方法。文章详细介绍了从Github上下载muduo和muduo-tutorial源代码的步骤,并指导如何编译muduo库。最后,作者提供了陈硕老师的Github链接和muduo库的简介。 ... [详细]
  • 在Docker中,将主机目录挂载到容器中作为volume使用时,常常会遇到文件权限问题。这是因为容器内外的UID不同所导致的。本文介绍了解决这个问题的方法,包括使用gosu和suexec工具以及在Dockerfile中配置volume的权限。通过这些方法,可以避免在使用Docker时出现无写权限的情况。 ... [详细]
  • XML介绍与使用的概述及标签规则
    本文介绍了XML的基本概念和用途,包括XML的可扩展性和标签的自定义特性。同时还详细解释了XML标签的规则,包括标签的尖括号和合法标识符的组成,标签必须成对出现的原则以及特殊标签的使用方法。通过本文的阅读,读者可以对XML的基本知识有一个全面的了解。 ... [详细]
  • JDK源码学习之HashTable(附带面试题)的学习笔记
    本文介绍了JDK源码学习之HashTable(附带面试题)的学习笔记,包括HashTable的定义、数据类型、与HashMap的关系和区别。文章提供了干货,并附带了其他相关主题的学习笔记。 ... [详细]
  • 解决github访问慢的问题的方法集锦
    本文总结了国内用户在访问github网站时可能遇到的加载慢的问题,并提供了解决方法,其中包括修改hosts文件来加速访问。 ... [详细]
  • Vagrant虚拟化工具的安装和使用教程
    本文介绍了Vagrant虚拟化工具的安装和使用教程。首先介绍了安装virtualBox和Vagrant的步骤。然后详细说明了Vagrant的安装和使用方法,包括如何检查安装是否成功。最后介绍了下载虚拟机镜像的步骤,以及Vagrant镜像网站的相关信息。 ... [详细]
  • 本文介绍了在Android Studio中使用命令行build gradle的方法,并解决了一些常见问题,包括手动配置gradle环境变量和解决External Native Build Issues的方法。同时提供了相关参考文章链接。 ... [详细]
  • ZooKeeper 学习
    前言相信大家对ZooKeeper应该不算陌生。但是你真的了解ZooKeeper是个什么东西吗?如果别人面试官让你给他讲讲ZooKeeper是个什么东西, ... [详细]
  • 初始化初始化本地空版本库,仓库,英文名repositorymkdirtest&&cdtestgitinit克隆项目到本地gitclone远程同 ... [详细]
  • 先记住几个专用名词,如下:Workspace:工作区IndexStage:暂存区Repository:仓库区(或本地仓库)Remote:远程仓库一、新建代码库#在当前目录新建一个G ... [详细]
  • imx6ull开发板驱动MT7601U无线网卡的方法和步骤详解
    本文详细介绍了在imx6ull开发板上驱动MT7601U无线网卡的方法和步骤。首先介绍了开发环境和硬件平台,然后说明了MT7601U驱动已经集成在linux内核的linux-4.x.x/drivers/net/wireless/mediatek/mt7601u文件中。接着介绍了移植mt7601u驱动的过程,包括编译内核和配置设备驱动。最后,列举了关键词和相关信息供读者参考。 ... [详细]
  • 1Lock与ReadWriteLock1.1LockpublicinterfaceLock{voidlock();voidlockInterruptibl ... [详细]
  • 本文介绍了如何使用MATLAB调用摄像头进行人脸检测和识别。首先需要安装扩展工具,并下载安装OS Generic Video Interface。然后使用MATLAB的机器视觉工具箱中的VJ算法进行人脸检测,可以直接调用CascadeObjectDetector函数进行检测。同时还介绍了如何调用摄像头进行人脸识别,并对每一帧图像进行识别。最后,给出了一些相关的参考资料和实例。 ... [详细]
author-avatar
mobiledu2502886833
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有