无法在 Visual Studio 2022 中启动调试适配器

Mar*_*sen 14 .net docker asp.net-core docker-desktop visual-studio-2022

如果我创建一个启用了 Docker 支持的 ASP Core MVC(目标框架 5.0)并启动它,我会得到:

发生一个或多个错误。无法启动调试适配器。输出窗口中可能提供其他信息。操作已取消。

这是调试输出:

在此输入图像描述

启用 DebugAdapterHost.Logging

DebugAdapterHost.Logging /On /OutputWindow
Run Code Online (Sandbox Code Playgroud)

给出以下输出:

1> DebugAdapterHost version: 16.9.50429.2 commit:ca34bde2a8dfef71e1d0b3bafd2804978bfbe6a9
 1> Starting 'docker' with arguments 'exec -i 7ce0da2e24860812b487ef583433deee7b411229b69c5631dc73027fd0864f1f /bin/sh -c "ID=.; if [ -e /etc/os-release ]; then . /etc/os-release; fi; if [ $ID = alpine ] && [ -e /remote_debugger/linux-musl-x64/vsdbg ]; then VSDBGPATH=/remote_debugger/linux-musl-x64; else VSDBGPATH=/remote_debugger; fi; $VSDBGPATH/vsdbg --interpreter=vscode"'
 1> [DebugAdapter] --> C (initialize-1): {"type":"request","command":"initialize","arguments":{"pathFormat":"path","clientID":"visualstudio","clientName":"Visual Studio","adapterID":"coreclr","locale":"en-US","linesStartAt1":true,"columnsStartAt1":true,"supportsVariableType":true,"supportsRunInTerminalRequest":true,"supportsMemoryReferences":true,"supportsProgressReporting":true,"SupportsMessageBox":true,"supportsHandshakeRequest":true,"supportsVsAdditionalBreakpointBinds":true,"supportsHitCountsChange":true,"supportsVsCustomMessages":true,"supportsVariableEnumerators":true},"seq":1}
 1> ERROR: Debug adapter error output: /bin/sh: 1: /remote_debugger/vsdbg: not found
 1> ERROR: Debug Adapter did not respond to initial requests.
 1> ERROR: Unexpected error

AggregateException: One or more errors occurred.

Aggregate exception: 
    DebugAdapterLaunchException: Failed to launch debug adapter.  Additional information may be available in the output window.

    Failure Location: UserCanceled
    Inner Exception: 
        OperationCanceledException: The operation was canceled.
Inner Exception: 
    DebugAdapterLaunchException: Failed to launch debug adapter.  Additional information may be available in the output window.

Microsoft.VisualStudio.Debugger.VSCodeDebuggerHost.Engine.Implementation.DebuggedProcess.<StartDebugAdapter>b__114_3(Exception ex)
Microsoft.VisualStudio.Debugger.VSCodeDebuggerHost.Utilities.TaskExtensions.<>c__DisplayClass11_0`1.<Catch>b__0(TException ex)
Microsoft.VisualStudio.Debugger.VSCodeDebuggerHost.Utilities.TaskExtensions.<>c__DisplayClass10_0`1.<Catch>b__0(AggregateException ex)

    Failure Location: UserCanceled
    Inner Exception: 
        OperationCanceledException: The operation was canceled.

 1> Debug adapter process exited.
 1> ERROR: One or more errors occurred.

Failed to launch debug adapter.  Additional information may be available in the output window.

The operation was canceled.
Run Code Online (Sandbox Code Playgroud)

我尝试重新安装 Docker Desktop 和 Visual Studio 2022。Windows 11 已完全更新。

我可以直接在 Docker Desktop 中构建并运行 Nginx 映像,不会出现错误,因此我认为这与我的 Visual Studio 2022 安装有关。

我的设置:

Docker 桌面版 4.5.1

Microsoft Visual Studio 社区 2022(64 位)- 17.1.0

Windows 11 家庭版

我还尝试降级到:

Docker 桌面版 4.4.4

Microsoft Visual Studio 社区 2019(64 位)

但结果完全相同。

Mar*_*sen 25

事实证明“/remote_debugger/vsdbg”确实丢失了。预计可以在主机上的“C:\Users\用户名\vsdbg\vs2017u5”中找到。

删除整个目录(“C:\Users\username\vsdbg\vs2017u5”),然后按 F5 强制 Visual Studio 重新创建目录,并且调试现在可以正常工作。

  • 搜索了一整天后救了我,感谢分享这个经验。 (5认同)

Uma*_*jaz 11

对我来说这解决了:

  1. 清理并重建解决方案。
  2. 在我们运行项目的绿色箭头下拉菜单中禁用Visual Studio 中的脚本调试。

步骤 2 的屏幕截图