如何在Linux 中使用vscode 调试 单C#文件

随着版本的更新,.net平台 已经可以使用dotnet run ./TEST.cs 直接运行单一的C#文件,但有时候我们又想调试代码,这该怎么办呢?

首先,我们需要确定dotnet生成的可执行文件的位置, 这里在linux中可以使用 locate TEST , TEST就是 C#文件的名字。


#:sdk Cake.Sdk@6.1.1
#:project /mnt/hgfs/SelfMake/SelfMake.csproj
//#:property IncludeAdditionalFiles=hello.sMake
using SelfMake;

C.Prepare();


//Hello.Print();

List<string>  sourceList = new List<string>()
{
    "test/math_ops.c",
    "test/MyMath.cpp",
    "main.cpp",

};


C.AddExtraIncludePaths("test");

var objectFiles = C.MultiCompile(sourceList);

C.AppFromObjects("test", objectFiles);

MakeManager.Instance.Make();

foreach(var obj in objectFiles)
{
    Console.WriteLine(obj);
}


接着我们就能找到类似这样的路径

/home/user/.local/share/dotnet/runfile/TEST-680b853ef5e4ab1306977b189dbe2b4d6de8c013bb7522e4d357ebf33db31b1d/bin/debug

我们可以在这个 bin/debug 目录中找到 生成的可执行文件。

接着, 我们回到VSCode

将 下面的 配置 存储到 launch.json

    {
        "name": ".NET Core Launch (console)",
        "type": "coreclr",
        "request": "launch",
        "program": "/home/user/.local/share/dotnet/runfile/TEST-680b853ef5e4ab1306977b189dbe2b4d6de8c013bb7522e4d357ebf33db31b1d/bin/debug/Cake.SDK",
        "args": [],
        "cwd": "${workspaceFolder}",
        "console": "internalConsole",
        "stopAtEntry": false
    }

然后就可以调试代码了。

posted @ 2026-04-05 14:53  dewxin  阅读(1)  评论(0)    收藏  举报