【问题标题】:VS Code $msCompile problemMatcher doesn't work with relative file pathVS Code $msCompile problemMatcher 不适用于相对文件路径
【发布时间】:2018-09-03 02:20:27
【问题描述】:

我需要使用 Visual Studio Code 编译一个 .NET 解决方案。 我在tasks.json 中的任务声明如下:

{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "build",
            "command": "dotnet",
            "type": "process",
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "args": [
                "build",
                "${workspaceFolder}"
            ],
            "problemMatcher": "$msCompile"
        }
    ]
}

现在按 Ctrl+B 我可以成功编译整个解决方案。不幸的是,dotnet build 似乎输出了相对文件路径,而从documentation 来看,$msCompile 问题匹配器仅适用于绝对路径。效果是,当在“问题”面板中单击它时出现错误时会产生错误Unable to open XYZ.cs: File not found

如何正确配置dotnet build 或problemMatcher 才能正常工作?

【问题讨论】:

    标签: .net visual-studio-code dotnet-cli vscode-problem-matcher


    【解决方案1】:

    一个简单的解决方案是让dotnet build 使用/property:GenerateFullPaths=true 参数生成绝对文件路径。 这是一个工作任务定义:

    {
        "version": "2.0.0",
        "tasks": [
            {
                "label": "build",
                "command": "dotnet",
                "type": "process",
                "group": {
                    "kind": "build",
                    "isDefault": true
                },
                "args": [
                    "build",
                    "${workspaceFolder}",
                    "/property:GenerateFullPaths=true"
                ],
                "problemMatcher": "$msCompile"
            }
        ]
    }
    

    【讨论】:

      猜你喜欢
      • 2012-08-29
      • 2020-08-13
      • 2011-07-12
      • 2013-01-11
      • 1970-01-01
      • 2014-01-02
      • 2018-03-11
      • 2017-07-28
      • 2015-05-14
      相关资源
      最近更新 更多