Visual Studio Code C# 调试问题(终端进程无法启动:shell 可执行文件“dotnet”的路径不是符号链接文件。)

BMo*_*oon 15 .net c# visual-studio-code

我创建了一个工作区dotnet new console,写了一些代码。但是,当我尝试使用 Visual Studio 代码中的运行/开始调试选项开始调试它时,它失败并显示以下消息:

执行任务:dotnet build /home/MY USERNAME/Desktop/Codes/C#/Console/Console.csproj /property:GenerateFullPaths=true /consoleloggerparameters:NoSummary
The terminal process failed to launch: Path to shell executable "dotnet" is not a file的符号链接。
终端将被任务重用,按任意键关闭它。

dotnet run在终端中使用该命令可以正常工作,没有任何问题。但是由于某种原因,使用开始调试选项失败。我真的不想每次要启动程序时都必须键入此命令。

下面是dotnet --info命令的结果:

.NET Core SDK (reflects global.json if exists):\
 Version:   3.1.302\
 Commit:    41faccf259

Runtime Environment:\
 OS Name:     ubuntu\
 OS Version:  20.04\
 OS Platform: Linux\
 RID:         linux-x64\
 Base Path:   /usr/share/dotnet/sdk/3.1.302/

Host (useful for support):\
  Version: 3.1.6\
  Commit:  3acd9b0cd1

.NET Core SDKs installed:\
  3.1.302 [/usr/share/dotnet/sdk]

.NET Core runtimes installed:\
  Microsoft.AspNetCore.App 3.1.6 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]\
  Microsoft.NETCore.App 3.1.6 [/usr/share/dotnet/shared/Microsoft.NETCore.App]

To install additional .NET Core runtimes or SDKs:\
  https://aka.ms/dotnet-download
Run Code Online (Sandbox Code Playgroud)

我已经对结果做了一些翻译,它可能与原始输出不完全匹配

BMo*_*oon 22

看来这个帖子不会有人回答了。我找到了解决方法。在“tasks.json”文件中,我用“/usr/bin/dotnet”替换了命令“dotnet”,现在它工作正常。但我认为实际问题与路径变量有关,我的解决方案只是暂时的。

  • 非常感谢,我也遇到了同样的问题,这完全解决了它。 (2认同)
  • 我必须使用命令 $ whereis dotnet,然后使用路径 /home/{ user }/dotnet/dotnet (Ubuntu 20.04) (2认同)

小智 12

尝试.vscode从 dotnet 根项目中删除该文件夹。然后重新启动 vscode 项目窗口,.vscode当系统要求您添加配置时,该文件夹将自动重新生成。现在您的 C# 调试应该可以正常工作了。它在 Linux 上对我有用。

  • 在 Mac 11.4 Big Sur 上为我工作 (3认同)

csc*_*530 10

对我来说,这只是在 Mac 上随机发生的。修复方法是添加:

export dotnet=/usr/local/share/dotnet/dotnet

到我的~/.zshrc文件。然后重启vscode。