fvm 版本管理
参考
特点
- 系统全局版本切换
- 不同项目间可以多个版本切换
- 支持桌面工具、cli 命令行、Docker 方式
安装
- 安装 fvm
brew tap leoafarias/fvm
brew install leoafarias/fvm/fvm
- 安装 sdk
fvm install 2.10.5
- 设置全局
fvm global 2.10.5
- 修改环境变量
code ~/.bash_profile
# flutter sdk
export PATH=${PATH}:~/fvm/default/bin
# dart sdk
export PATH=${PATH}:~/fvm/default/bin/cache/dart-sdk/bin
export PATH=${PATH}:~/.pub-cache/bin
- vscode 配置
默认个情况 vscode 会从你的 PATH 中读取 sdk 位置,如果还是提示找不到,可以如下操作:
开设置setting.json
面板,加入 fvm 的默认位置
"dart.flutterSdkPath": "~/fvm/default/bin"
- Android studio 设置
打开项目属性面板
~/fvm/default/bin
全局切换
- 安装 3.0.1
fvm install 3.0.1
- 设置当前默认
fvm global 3.0.1
项目单独版本
- 进入项目目录
fvm use 3.0.1
- vscode sdk 搜索
编辑 .vscode/settings.json
{
"dart.flutterSdkPath": ".fvm/flutter_sdk",
// Remove .fvm files from search
"search.exclude": {
"**/.fvm": true
},
// Remove from file watching
"files.watcherExclude": {
"**/.fvm": true
}
}
- Android Studio 忽略搜索目录
修改 .idea/workspace.xml
<component name="VcsManagerConfiguration">
<ignored-roots>
<path value="$PROJECT_DIR$/.fvm/flutter_sdk" />
</ignored-roots>
</component>
- Android Studio 调整 sdk 位置
fvm/flutter_sdk
Git 忽略 编辑 .gitignore
.fvm/flutter_sdk
其它
- 卸载
brew uninstall leoafarias/fvm/fvm
brew untap leoafarias/fvm
- 删除 sdk
fvm remove 2.10.5
- 已安装的 sdk 列表
fvm list
- 查看可安装的 sdk 版本
fvm release
- 检查环境
fvm docctor
Sidekick 桌面应用
https://github.com/fluttertools/sidekick
- 安装
https://github.com/fluttertools/sidekick/releases
- 图形界面操作
- 可设置中文
常见问题
- Error: Formulae found in multiple taps: _ befovy/taps/fvm _ leoafarias/fvm/fvm
那我们指定安装 leoafarias/fvm/fvm
brew install leoafarias/fvm/fvm
- OS Error: Too many open files, errno = 24
临时扩大线程栈空间
ulimit -S -n 2048
- GitHub API Error: Bad credentials (GitHub::API::AuthenticationFailedError) The GitHub credentials in the macOS keychain may be invalid.
提示
Clear them with:
printf "protocol=https\nhost=github.com\n" | git credential-osxkeychain erase
Create a GitHub personal access token:
https://github.com/settings/tokens/new?scopes=gist,repo,workflow&description=Homebrew
echo 'export HOMEBREW_GITHUB_API_TOKEN=your_token_here' >> ~/.zshrc
我这边是建了 token 然后零时设置了
export HOMEBREW_GITHUB_API_TOKEN=ghp_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx