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 文件
相关推荐
jiejiejiejie_1 小时前
Flutter for OpenHarmony 喝水提醒功能实现指南
flutter
liulian09162 小时前
Flutter for OpenHarmony 跨平台开发:喝水提醒功能实战指南
flutter
SoaringHeart19 小时前
Flutter进阶:放弃 MediaQuery.of(context) 使用 NScreenManager
前端·flutter