gpt4 book ai didi

visual-studio-code - VSCode 不断要求我恢复

转载 作者:行者123 更新时间:2023-12-04 04:28:38 27 4
gpt4 key购买 nike

Windows 10 上的 VSCode 1.20.0,带有 C# 扩展 ms-vscode.csharp 1.14.0。
VSCode 终端指向 bash(适用于 Linux 的 Windows 子系统)
VSCode 在包含 .NET CORE 2.0 C# 项目的文件夹中打开

一切都很好,智能感知工作,项目引用被理解。

每当我将焦点切换到 VS Code 终端并输入“dotnet build”或“dotnet test”时,VSCode 就会感到困惑。 Red Squigglies 在每一行源代码下划线,intellisense 停止工作,VSCode 打开两个信息框,上面写着
Info: There are unresolved dependencies from src\Project.csproj. Please execute the restore command to continue.
Info: There are unresolved dependencies from test\Project.Tests.csproj. Please execute the restore command to continue.

当我单击信息框中的“恢复”按钮时,大约 15 秒后该项目再次运行。但是为什么,这种情况一直发生,我倾向于频繁地构建 dotnet。我可以通过不同的方式配置 VS Code 来避免这个问题吗?构建代码会破坏编辑器功能似乎不对,所以我一定是做错了什么。

编辑:

这个问题似乎只有在我 dotnet build 时才会重现或 dotnet test在 WSL\bash(无论是内部终端还是外部终端)中。当我在外部 cmd.exe 中构建或测试时,它似乎没有重现

编辑:
cmd.exe dotnet --info
.NET 命令行工具 (2.1.4)

产品信息:
版本:2.1.4
提交 SHA-1 哈希值:5e8add2190

运行环境:
操作系统名称:Windows
操作系统版本:10.0.16299
操作系统平台:Windows
RID:win10-x64
基本路径:C:\Program Files\dotnet\sdk\2.1.4\

Microsoft .NET Core 共享框架主机

版本:2.0.5
版本:17373eb129b3b05aa18ece963f8795d65ef8ea54
WSL\bash $ dotnet --info
.NET 命令行工具 (2.0.3)

产品信息:
版本:2.0.3
提交 SHA-1 哈希:eb1d5ee318

运行环境:
操作系统名称:ubuntu
操作系统版本:16.04
操作系统平台:Linux
RID:ubuntu.16.04-x64
基本路径:/usr/share/dotnet/sdk/2.0.3/

Microsoft .NET Core 共享框架主机

版本:2.0.3
构建:a9190d4a75f4a982ae4b4fa8d1a24526566c69df

最佳答案

发生这种情况的原因可能是因为 VS Code 使用的是在 Windows 上运行的 Omnisharp - 当您使用 Bash 构建时,您是在为 linux 构建,因此在 obj 文件夹中的文件中生成的所有引用路径都将是 linux 路径,而不是 Windows路径。

当Omnisharp在VS Code中寻找intellisense的引用依赖时,它找不到,所以VS Code要求你恢复你的项目。

您可以通过检查 obj 文件夹中的任何文件并查看路径来确认。

编辑 - 2019

只是对此的更新 - 事情看起来很有希望。我们很快就能使用 VS Code Remote Extension Pack在 WSL 环境(或 Docker 容器或什至通过 SSH session )内运行扩展。这非常棒 - 这应该意味着我们的代码不仅可以在 WSL 中运行,而且扩展也可以 - 因此 OmniSharp 扩展将在 WSL 中运行,使用 Linux 二进制文件进行智能感知等。

我个人对 Microsoft 发布的新工具感到非常兴奋。使用 WSL、VS Code、Docker 和 Hyper V 等工具在 Windows 平台上进行开发真是太棒了……而即将推出的 WSL 2 将令人难以置信(FULL Linux Kernal 已融入 Windows 中!!!)

关于visual-studio-code - VSCode 不断要求我恢复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48795674/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com