visual-studio-code - Visual Studio Code 调试器 : launch. json 属性 'program' 无效

标签 visual-studio-code .net-core omnisharp

1. 设置:我已在我的 Ubuntu 上安装了 Visual Studio 代码并安装了 .NET Core和莫诺。

2. 初始配置:我创建了一个运行 notnet restoredotnet run 的简单演示应用程序。这只是工作正常并显示“Hello World!”在终端上。

3.扩展:为了调试这个,我安装了OmniSharp的扩展。然后使用 Visual Studio Code 的“调试器”选项,我添加了 launch.jsontask.json

4. launch.json(仅显示配置部分):

....
"configurations": [
    {
        "name": ".NET Core Launch (console)",
        "type": "coreclr",
        "request": "launch",
        "preLaunchTask": "build",
        "program": "${workspaceRoot}/bin/Debug/netstandardapp1.5/hwAppCore2.dll",
        "args": [],
        "cwd": "${workspaceRoot}",
        "stopAtEntry": false
    }    
....

5. 现在,从终端运行时它工作正常,但是当尝试使用选项 .NET Core Launch(控制台) 进行调试时,我收到以下错误:

“启动:属性“program”无效。“/home/ak/dotnet_core/hwAppCore2/bin/Debug/netstandardapp1.5/hwAppCore2.dll”是一个库 (.dll),而不是程序”

我还关注了 Channel 9 demo 之一,我还可以看到为 launch.json

的程序属性配置的 hwapp.dll

我不确定,我是否缺少任何需要配置的内容?

最佳答案

要获得 VS Code 调试 .NET Core 网站,您必须跳过几个环节。相关步骤(来自 this blog post walkthrough )是:

  • 安装C# extension和 .NET 调试器(Ctrl + Shift + P,“下载 .NET Core 调试器”)
  • 打开您的项目文件夹 - 它应该提示您添加构建任务
    • (创建 .vscode > tasks.json )
  • 从侧边栏打开“调试”选项卡,单击“设置”按钮,然后选择“.NET Core”
    • (创建 .vscode > launch.json )具有 3 种配置 - “控制台”、“网络”和“附加”。
  • 打开launch.json文件并编辑“web”配置的 program值 - 替换<>具有您的特定值的占位符(例如 netcoreapp1.0MyProject.dll )。
    • (这是OP需要执行的步骤)
    • 出于某种原因,VS Code 无法处理 Web 项目的占位符...我尚未找到任何文档/解释原因
  • 编辑 project.json文件 - 在buildOptions下,添加"debugType" : "portable"
  • 运行dotnet restore在您的项目上获取最新的软件包
  • 开始调试!

关于visual-studio-code - Visual Studio Code 调试器 : launch. json 属性 'program' 无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37126052/

相关文章:

visual-studio-code - 如何创建自定义键绑定(bind)以将语法突出显示更改为 Visual Studio Code 中的特定语言?

visual-studio-code - 是否有更改包含字符串的两个引号的快捷方式?

javascript - 合并逻辑?

c# - VSCode intellisense 不适用于一个 c# 项目的解决方案

c# - 无法使用 Unity 函数在 Visual Studio Code 中获得完整的 Intellisense

git - 无法将 refs 推送到远程尝试先运行 pull 以集成您的更改

asp.net-core - 将属性添加到 .net core 中 NLog 中的日志消息

c# - 如何通过继承映射实体 - Entity Framework Core 2.0

mono - 如何更改默认 dnx 版本是 Visual Studio Code?