【问题标题】:Developing Flutter with VSCode and WSL2使用 VSCode 和 WSL2 开发 Flutter
【发布时间】:2020-02-14 21:21:33
【问题描述】:

由于我主要使用 nginx、PHP 和 MySQL 开发 Web,因此我已将我的 WebDev 环境完全移植到 WSL2。 由于性能非常重要,我所有与 Web 相关的项目都驻留在 WSL2-vhdx 文件 /home/user/Projects/Web 中。在 WSL2 中,我已经安装了所有必要的工具,以获得类似 Linux 的良好体验、Docker、GIT 等。这与 VSCode 远程集成相结合效果很好。

现在,我正在着手构建 Flutter-Apps,并且我的 Flutter-environment 安装在 Windows 端。我的 Flutter 相关项目驻留在 D:\Projects\Flutter 上,这是一个分区,并且以任何方式在 WSL2 中未使用。使用 flutter-windows-sdk 和 VSCode 构建 Flutter-apps 可以很好地工作。

但是,问题是:现在我的项目文件分散在我的计算机上。 WSL2-vhdx 文件中的 Web-stuff 和 D 分区中的 Flutter-stuff。

有没有办法使用 Flutter 构建 Flutter 应用程序,同时将项目文件存储在 WSL2-vhdx 文件中,并结合 VSCode-remote 和 Android 模拟器?

我尝试在 \\wsl$ 网络挂载上创建一个测试 Flutter 项目,但没有成功。

将我的 Web 相关项目文件移动到 Windows 的 D:\ 分区是不行的,因为 WSL2 中的 I/O 挂载非常慢。

【问题讨论】:

    标签: flutter visual-studio-code windows-subsystem-for-linux


    【解决方案1】:

    我用adb connect 192.168.xxx可靠地让它工作了 有兴趣的人可以在这里查看我的完整博文:https://dnmc.in/2021/01/25/setting-up-flutter-natively-with-wsl2-vs-code-hot-reload/

    【讨论】:

      【解决方案2】:

      有没有办法使用 Flutter 构建 Flutter 应用程序,同时将项目文件存储在 WSL2-vhdx 文件中,并结合 VSCode-remote 和 Android 模拟器?

      我假设(基于对 VS Code Remoting 的提及)您希望在 WSL 中运行扩展。我没有具体尝试过,但我已经在 WSL 中运行了 Flutter,并将 VS Code Remoting 会话连接到云中的 Android 模拟器,所以我希望它能够工作。

      您需要确保在 WSL 中设置了 Flutter SDK(这样您就可以在 WSL 中运行 flutter 命令 - 如果您正在使用,它应该是 Flutter SDK 的 Linux 版本,而不是 Windows 版本)拉链)。

      要让您的模拟器从 WSL 内部显示在 flutter devices 中,您可能需要从 Windows 端运行 adb tcpip 5555(这意味着您需要 Windows 中的 Android SDK)- 这将告诉您的手机监听TCP 端口 5555。然后您需要从 WSL 内部运行adb connect [phone ip]:5555(这意味着您需要在 Linux 中使用 Android SDK)。如果一切顺利,手机应该会显示在adb devices 中,并且也会被 VS Code 中的设备选择器选中。

      我尝试在 \wsl$ 网络挂载上创建一个测试 Flutter 项目,但没有成功。

      目前尚不清楚这里出了什么问题,但我的第一个猜测是可能不支持 UNC 路径 - 如果您将驱动器号映射到它会有所不同吗?

      虽然这不是官方支持的设置,但如有任何问题,请随时在 GitHub 上的 Dart-Code 存储库中提出问题。这不是优先事项,但我希望 VS Code Remoting(包括 WSL 和 Docker)一般适用于 Dart 和 Flutter 开发人员。

      【讨论】:

        猜你喜欢
        • 2022-08-19
        • 2022-07-12
        • 2021-05-17
        • 2020-09-18
        • 2021-11-23
        • 2019-06-20
        • 2022-01-24
        • 1970-01-01
        • 2021-09-13
        相关资源
        最近更新 更多