使用Visual Studio 2022远程调试树莓派4上.NET 6 C#控制台应用失败
问题:树莓派4远程调试.NET 6控制台应用失败,提示缺少
.vs-debugger调试脚本 场景复现
- 环境:树莓派4(Raspbian/Linux),本地通过VS以SSH方式远程附加进程调试.NET 6控制台应用
- 前置状态:已安装Linux端.NET 6运行时/SDK,手动执行
bin目录下的程序可正常运行 - 异常现象:按微软SSH附加调试教程配置后,启动调试时提示无法找到'/home/admin/.vs-debugger'下的调试脚本,调试适配器启动失败
排查与解决步骤
检查远程调试组件目录
登录树莓派执行命令,确认.vs-debugger目录是否存在及内容:ls -la /home/admin/.vs-debugger若目录为空或不存在,说明VS未自动推送调试组件到远程机器,需手动安装。
手动安装远程调试组件
在树莓派上执行官方安装脚本,指定安装目录为用户目录下的.vs-debugger:curl -sSL https://aka.ms/getvsdbgsh | bash /dev/stdin -v latest -l /home/admin/.vs-debugger替换
/home/admin为你的远程登录用户目录。修复目录权限
确保调试组件目录及文件具备可执行权限:chmod -R 755 /home/admin/.vs-debugger核对launchSettings.json配置
确认配置中的远程连接信息、工作路径完全正确,示例配置如下:{ "profiles": { "Remote Debug": { "commandName": "Remote", "remoteMachine": "pi@192.168.1.100:22", "remoteWorkingDirectory": "/home/admin/your-app/bin/Debug/net6.0", "environmentVariables": { "DOTNET_ENVIRONMENT": "Development" }, "publishAllPorts": true } } }重点检查
remoteMachine的用户/IP/端口,以及remoteWorkingDirectory是否和远程程序所在路径完全匹配。同步程序集与PDB文件
确保本地编译生成的程序集(.dll)和PDB文件与远程机器上的版本完全一致,可直接将本地bin/Debug/net6.0下的所有文件重新同步到远程对应目录。调整VS调试设置
- 打开VS的调试 > 选项 > 调试 > 常规,取消勾选启用仅我的代码(部分场景会干扰调试组件加载)
- 确认SSH连接的认证方式(密码/密钥)可正常连接到树莓派,避免因连接不稳定导致调试组件加载失败
内容的提问来源于stack exchange,提问作者skt
相关产品推荐
相关产品推荐

