Windows GitBash 下 FVM 配置流程

适用场景

Windows + Git Bash / MINGW64症状:

  1. 终端手动输 fvm 找不到命令
  2. 终端能用 fvm,但 sh 脚本里 fvm: command not found
  3. 软链接报错、bat 直接执行语法错误

步骤 1:全局重装激活 FVM

bash运行

Dart 复制代码
dart pub global deactivate fvm
dart pub global activate fvm

步骤 2:配置 Bash 环境变量

bash运行

Dart 复制代码
# 清空旧配置,写入正确Pub路径
echo 'export PATH="$PATH:/c/Users/Admin/AppData/Local/Pub/Cache/bin"' > ~/.bashrc
# 生效配置
source ~/.bashrc

步骤 3:创建 Bash 包装脚本(核心:解决脚本无法调用 fvm)

bash运行

Dart 复制代码
# 生成可执行的 fvm 壳脚本,内部调用 fvm.bat
cat > /c/Users/Admin/AppData/Local/Pub/Cache/bin/fvm << 'EOF'
#!/bin/bash
fvm.bat "$@"
EOF

# 加执行权限
chmod +x /c/Users/Admin/AppData/Local/Pub/Cache/bin/fvm

# 再次生效
source ~/.bashrc

步骤 4:校验

Dart 复制代码
# 查看版本
fvm --version

# 测试 Flutter 调用
fvm flutter --version

# 测试你的i18n脚本
./scripts/i18n.sh

原理备忘(以后出问题一看就懂)

  1. Windows 下 dart pub global 生成的是 fvm.bat
  2. GitBash 交互式终端可以靠别名识别,但 sh 脚本不读别名
  3. 不能用 ln 软链接直接指向 bat,会当成 shell 脚本解析报错
  4. 所以自建一个纯 bash 壳脚本,中转调用 fvm.bat,终端、脚本都能用,不用改项目任何 sh 文件
相关推荐
程序员老刘1 天前
跨平台开发地图 | 2026年6月
flutter·ai编程·客户端
悟空瞎说2 天前
Flutter 架构详解:新手必懂底层原理
flutter
SoaringHeart2 天前
Flutter最佳实践:IM聊天文字链接自动识别跳转
前端·flutter
恋猫de小郭2 天前
KMP / CMP 鸿蒙版本 Beta 发布,他有什么特别之处?
android·前端·flutter
风华圆舞3 天前
Flutter + 鸿蒙 Intents Kit:页面直达能力的完整接入方案
flutter·ui·华为·harmonyos
韩曙亮3 天前
【Flutter】Flutter 组件 ④ ( 组件渲染 的 三棵树理论 | Widget 树 → Element 树 → RenderObject 树 )
flutter·element·widget·renderobject
恋猫de小郭3 天前
Android 17 正式版发布,全新 AI 和各种破坏性更新
android·前端·flutter
kingbal3 天前
Windows:flutter环境搭建
windows·flutter
911hzh3 天前
Flutter MethodChannel 跨端通信框架 zh_native_channel:快速入门、优势分析与 Pigeon 对比
flutter
911hzh3 天前
Flutter 快速搭建新项目:用 Flutter Foundation Kit 一条命令生成带基础架构的 App 模板
flutter