C# - VS 代码 - launch:program ...不存在
C# - VS Code - launch:program ... does not exist
我正在尝试在 VS Code 中调试一个简单的 "Hello world" 应用程序,但是,当我按下 Ctrl + F5 时,出现以下错误:
如果我手动更改 launch.json 中的路径:
${workspaceFolder}/bin/Debug/insert-target-framework-here/insert-project-name-here.dll
收件人:
"${workspaceFolder}/bin/Debug/netcoreapp2.1/test.dll"
它确实可以工作,但是在没有我手动输入路径的情况下它工作正常。另外,我注意到 VS Code 不再像以前那样要求重建资产:
到目前为止,我已经尝试了以下方法:
先卸载 VS Code,再卸载 .NET Core 2.1,从 %USER%\.vscode\ 删除 VS Code 扩展文件夹,重新安装 VS Code,再安装 .NET Core 2.1,再安装 C#扩展(C# for Visual Studio 代码(由 OmniSharp 提供支持))。
当 VS Code 启动时,它确实成功下载了 "OmniSharp" 包,但是当我打开 C# 文件时仍然没有提示重建资产。调试给出了与以前相同的问题。
这是launch.json:
"version": "0.2.0",
"configurations": [
{
"name": ".NET Core Launch (console)",
"type": "coreclr",
"request": "launch",
"preLaunchTask": "build",
"program": "${workspaceFolder}/bin/Debug/<insert-target-framework-here>/<insert-project-name-here>.dll",
"args": [],
"cwd": "${workspaceFolder}",
"console": "internalConsole",
"stopAtEntry": false,
"internalConsoleOptions": "openOnSessionStart"
}
和 tasks.json:
"version": "2.0.0",
"tasks": [
{
"label": "build",
"command": "dotnet build",
"type": "shell",
"group": "build",
"presentation": {
"reveal": "silent"
},
"problemMatcher": "$msCompile"
}
]
}
因为你用“<”和“>”标记了“.dll”,这意味着你已经赋予了它一个值。
最简单的方法是在 VSCode 中打开项目并使用 find&replace 替换:
使用我相信它的项目名称:"test" 根据 .dll 名称
我切换到 MS Visual Studio,因为我没有找到任何其他解决方案。
像这样配置您的 Launch.json Gist
并且不需要 Tasks.json ,您可以按 F5 自行构建或配置,按 F5 时默认 shell 的命令应为 运行
我找到了适合我的解决方案。
我的 VS Code 给了我同样的错误信息,我修复它的方法是:
- Press the combination Ctrl + Shift + P
- Restart Omnisharp
- Then it asks if you want to add missing files for build.
- Click Yes.
之后我就可以调试我的应用程序了。
希望对你有用!
// "program": "${workspaceFolder}/bin/Debug/<insert-target-framework-here>/<insert-project-name-here>.dll",
"program": "${workspaceFolder}/bin/Debug/netcoreapp3.1/csharp_multi_threads.dll",
您需要根据提示更改程序值
访问项目文件夹中的 \bin\Debug\netcoreapp3.1(在 VS 中打开)
在 VS 中转到 launch.json 文件:
替换:
"程序": "${workspaceFolder}/bin/Debug//.dll",
与:
“程序”:“${workspaceFolder}/bin/Debug/netcoreapp3.1/CSharp
.dll”,
在某些情况下,该项目称为 CSharp
。小心。
我有同样的错误。调试器正在 ${workspaceFolder}/bin/Debug/netcoreapp3.1/myApp.dll
中寻找 .dll 文件,但该文件位于 ${workspaceFolder}/bin/MCD/Debug/netcoreapp3.1/tradeAppl.dll
更改launch.json文件后读取
...
"program": "${workspaceFolder}/bin/MCD/Debug/netcoreapp3.1/tradeAppl.dll",
...
我能够毫无问题地调试应用程序。
-右键单击项目名称并单击在资源管理器中显示
-在文件夹名称后复制 Url 在资源管理器中
例如我的文件夹地址是
D:\IOT\Projects\LWSIOT_WebApiWM2\LWSIOT_WebApiWM2\LWSIOT_WebApiWM2\bin\Debug\netcoreapp3.1\LWSIOT_WebApiWM2.dll
在 Launch.json 中:
${workspaceFolder}/LWSIOT_WebApiWM2/LWSIOT_WebApiWM2/bin/Debug/netcoreapp3.1/LWSIOT_WebApiWM2.dll
- 在“程序”上粘贴 Launch.json:“”
-点击调试就OK了
在 launch.json 中,替换 :
"程序": "${workspaceFolder}/Api/bin/Debug/netcoreapp3.1/Api.dll",
与:
“程序”:“${workspaceFolder}/Api/bin/linux/Debug/netcoreapp3.1/Api.dll”
由于我是 运行 在 Linux 机器上编写代码,所以我应该提供 Linux 文件夹路径
一定是 launch.json
文件的 program
属性 中的 dll 路径有问题。
在我的例子中,它在版本升级后仍然包含旧的.net core framework 版本。
我正在尝试在 VS Code 中调试一个简单的 "Hello world" 应用程序,但是,当我按下 Ctrl + F5 时,出现以下错误:
如果我手动更改 launch.json 中的路径:
${workspaceFolder}/bin/Debug/insert-target-framework-here/insert-project-name-here.dll
收件人:
"${workspaceFolder}/bin/Debug/netcoreapp2.1/test.dll"
它确实可以工作,但是在没有我手动输入路径的情况下它工作正常。另外,我注意到 VS Code 不再像以前那样要求重建资产:
到目前为止,我已经尝试了以下方法:
先卸载 VS Code,再卸载 .NET Core 2.1,从 %USER%\.vscode\ 删除 VS Code 扩展文件夹,重新安装 VS Code,再安装 .NET Core 2.1,再安装 C#扩展(C# for Visual Studio 代码(由 OmniSharp 提供支持))。
当 VS Code 启动时,它确实成功下载了 "OmniSharp" 包,但是当我打开 C# 文件时仍然没有提示重建资产。调试给出了与以前相同的问题。
这是launch.json:
"version": "0.2.0",
"configurations": [
{
"name": ".NET Core Launch (console)",
"type": "coreclr",
"request": "launch",
"preLaunchTask": "build",
"program": "${workspaceFolder}/bin/Debug/<insert-target-framework-here>/<insert-project-name-here>.dll",
"args": [],
"cwd": "${workspaceFolder}",
"console": "internalConsole",
"stopAtEntry": false,
"internalConsoleOptions": "openOnSessionStart"
}
和 tasks.json:
"version": "2.0.0",
"tasks": [
{
"label": "build",
"command": "dotnet build",
"type": "shell",
"group": "build",
"presentation": {
"reveal": "silent"
},
"problemMatcher": "$msCompile"
}
]
}
因为你用“<”和“>”标记了“.dll”,这意味着你已经赋予了它一个值。 最简单的方法是在 VSCode 中打开项目并使用 find&replace 替换: 使用我相信它的项目名称:"test" 根据 .dll 名称
我切换到 MS Visual Studio,因为我没有找到任何其他解决方案。
像这样配置您的 Launch.json Gist
并且不需要 Tasks.json ,您可以按 F5 自行构建或配置,按 F5 时默认 shell 的命令应为 运行
我找到了适合我的解决方案。 我的 VS Code 给了我同样的错误信息,我修复它的方法是:
- Press the combination Ctrl + Shift + P
- Restart Omnisharp
- Then it asks if you want to add missing files for build.
- Click Yes.
之后我就可以调试我的应用程序了。
希望对你有用!
// "program": "${workspaceFolder}/bin/Debug/<insert-target-framework-here>/<insert-project-name-here>.dll",
"program": "${workspaceFolder}/bin/Debug/netcoreapp3.1/csharp_multi_threads.dll",
您需要根据提示更改程序值
访问项目文件夹中的 \bin\Debug\netcoreapp3.1(在 VS 中打开)
在 VS 中转到 launch.json 文件:
替换: "程序": "${workspaceFolder}/bin/Debug//.dll",
与:
“程序”:“${workspaceFolder}/bin/Debug/netcoreapp3.1/CSharp
.dll”,
在某些情况下,该项目称为 CSharp
。小心。
我有同样的错误。调试器正在 ${workspaceFolder}/bin/Debug/netcoreapp3.1/myApp.dll
中寻找 .dll 文件,但该文件位于 ${workspaceFolder}/bin/MCD/Debug/netcoreapp3.1/tradeAppl.dll
更改launch.json文件后读取
...
"program": "${workspaceFolder}/bin/MCD/Debug/netcoreapp3.1/tradeAppl.dll",
...
我能够毫无问题地调试应用程序。
-右键单击项目名称并单击在资源管理器中显示
-在文件夹名称后复制 Url 在资源管理器中
例如我的文件夹地址是
D:\IOT\Projects\LWSIOT_WebApiWM2\LWSIOT_WebApiWM2\LWSIOT_WebApiWM2\bin\Debug\netcoreapp3.1\LWSIOT_WebApiWM2.dll
在 Launch.json 中:
${workspaceFolder}/LWSIOT_WebApiWM2/LWSIOT_WebApiWM2/bin/Debug/netcoreapp3.1/LWSIOT_WebApiWM2.dll
- 在“程序”上粘贴 Launch.json:“
在 launch.json 中,替换 :
"程序": "${workspaceFolder}/Api/bin/Debug/netcoreapp3.1/Api.dll",
与:
“程序”:“${workspaceFolder}/Api/bin/linux/Debug/netcoreapp3.1/Api.dll”
由于我是 运行 在 Linux 机器上编写代码,所以我应该提供 Linux 文件夹路径
一定是 launch.json
文件的 program
属性 中的 dll 路径有问题。
在我的例子中,它在版本升级后仍然包含旧的.net core framework 版本。