【发布时间】:2021-12-21 17:38:49
【问题描述】:
我在我的 Windows 10 机器上的 C/Users/OEM/Documents/flutter 安装了 Windows 版本的 Flutter SDK,但是我通过 WSL1 使用 ohmyzsh 作为 shell 并使用 VS Code 作为 IDE 来完成我的所有开发。我解决了由于 windows 样式语法导致的通过 zsh 运行颤振命令的错误:
(例如 /mnt/c/Users/OEM/Documents/flutter/bin/flutter:第 5 行:$'\r': 找不到命令)
通过在我的主目录中创建一个 shell 脚本“flutter”来强制 flutter 命令通过 windows 运行:
#!/bin/bash
cmd.exe /c flutter.bat $@
现在这是我在 zsh 中从颤振医生 -v 中的输出:
[✓] Flutter (Channel stable, 2.5.3, on Microsoft Windows [Version 10.0.19042.1288],语言环境 en-US) • Flutter 2.5.3 版,位于 C:\Users\OEM\Documents\flutter • 上游仓库https://github.com/flutter/flutter.git • 框架修订 18116933e7(3 周前),2021-10-15 10:46:35 -0700 • 引擎修订版 d3ea636dc5 • Dart 版本 2.14.4
[✓] Android 工具链 - 为 Android 设备开发(Android SDK 版本 31.0.0) • C:\Users\OEM\AppData\Local\Android\sdk 中的 Android SDK • 平台 android-31,构建工具 31.0.0 • Java 二进制文件位于:C:\Program Files\Android\Android Studio\jre\bin\java • Java 版 OpenJDK 运行时环境(内部版本 11.0.10+0-b96-7249189) • 接受所有 Android 许可证。
[✓] Chrome - 为网络开发 • C:\Program Files\Google\Chrome\Application\chrome.exe 中的 Chrome
[✓] Android Studio(版本 2020.3) • C:\Program Files\Android\Android Studio 中的 Android Studio • Flutter 插件可以从以下位置安装: ??? https://plugins.jetbrains.com/plugin/9212-flutter • Dart 插件可以从以下位置安装: ??? https://plugins.jetbrains.com/plugin/6351-dart • Java 版 OpenJDK 运行时环境(内部版本 11.0.10+0-b96-7249189)
[✓] VS 代码(版本 1.62.0) • C:\Users\OEM\AppData\Local\Programs\Microsoft VS 代码中的 VS 代码 • Flutter 扩展可以从以下位置安装: ??? https://marketplace.visualstudio.com/items?itemName=Dart-Code.flutter
[✓] 已连接设备(2 个可用) • Chrome(网络) • chrome • web-javascript • Google Chrome 95.0.4638.69 • Edge(网络) • edge • web-javascript • Microsoft Edge 95.0.1020.30
一切正常。但是,VS Code 在打开项目时无法初始化 Flutter,因为它找不到 Dart SDK。以下是错误日志的相关部分:
[上午 11:55:40] [常规] [信息] 发现于:[上午 11:55:40] [常规] [信息] /home/jack-r-buckley [上午 11:55:40] [一般] [信息]
/mnt/c/Users/OEM/Documents/flutter/bin [上午 11:55:40] [常规] [信息] 要后过滤的候选路径:[11:55:40 AM] [General] [Info]
/home [上午 11:55:40] [常规] [信息]
/mnt/c/Users/OEM/Documents/flutter [上午 11:55:40] [常规] [信息]
返回 dart 未定义的 SDK 路径 [上午 11:55:40] [常规] [信息] 颤振未初始化,运行'颤振医生'强制... [上午 11:55:42] [常规] [信息] (PROC 1145) 记录过程的数据... [上午 11:55:43] [一般] [信息] (PROC 1145) /mnt/c/Users/OEM/Documents/flutter/bin/flutter:第 5 行:$'\r':命令 未找到 /mnt/c/Users/OEM/Documents/flutter/bin/flutter:第 13 行: $'\r': 找不到命令 /mnt/c/Users/OEM/Documents/flutter/bin/flutter:第 14 行:设置:-: 无效的选项集:用法:设置 [-abefhkmnptuvxBCHP] [-o 选项名称] [--] [arg ...] /mnt/c/Users/OEM/Documents/flutter/bin/flutter: 行 15: $'\r': 找不到命令 /mnt/c/Users/OEM/Documents/flutter/bin/flutter:第 17 行:未设置: `CDPATH':不是一个有效的身份... [上午 11 点 55 分 43 秒] [常规] [信息] (PROC 1145) 退出 (2, null)
我对开发还很陌生,所以如果我的方法在这里不合适,请原谅我。有没有办法让 VS Code 在这个设置中识别我的 Dart SDK?还是我最好只使用powershell并完全摆脱WSL?感谢您的宝贵时间。
【问题讨论】:
标签: flutter dart visual-studio-code zsh windows-subsystem-for-linux