news 2026/4/18 5:37:38

vscode远程调试python程序,基于debugpy库

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
vscode远程调试python程序,基于debugpy库

bugpy实现了下面的红色框中的部分

debugpy里面的Adapter负责和vscode这个调试客户端通信,debugpy的另外一部分是内嵌了一个pydevd库,这个pydevd库负责加载被调试的程序,给被调试的程序添加断点,运行一行代码后停在下一行代码,告知调试客户端当前调试到哪一行了……,只是pydevd的数据格式不是DAP协议的格式,Adapter相当于把它原本的格式转换成DAP协议的格式了。(pycharm调试程序用的就是pydevd库)

image

准备工作:

Windows电脑安装vscode,安装python相关插件

image

Linux主机,pip安装debugpy库

vscode打开被调试的python程序,Linux主机上也要存放相同的python程序

远程调试方式1

image

launch.json这样配置

image

image

image

最后生成的调试配置长这样,host,port是远程主机的ip,端口

image

在远程的Linux主机上面启动被调试的程序

image

选择前面设置的deubg配置,设置断点后,就可以调试了

image

可以看到vscode成功连接到远端的Adapter

image

远端的Linux主机,被调试的程序也有相应的输出内容

image

远程调试方式2

有时候,vscode所在的主机不能连接到远程的主机,比如远端是个容器,而且又没有暴露端口出来,但是远端的容器可以连接 vscode所在的主机,就可以用这种反向连接的办法

launch.json改成这样

image

先在vscode上面启动调试,vscode会等待adapter连接进来

image

Linux主机上面把--listen 改成--connect, ip改成vscode所在的主机ip

image

adapter连接到vscode所在主机后,继续运行,单步运行按钮就可用了

image

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 7:54:13

python3构建通用项目脚手架:一个脚本解决跨平台目录创建难题tree.py

背景:某些框架的“脚手架缺失” 可能对于很多人来说不是难题,对于我来说 ,用习惯了django springboot3 等 遇到fastAPI这种 有工具的 也可以 通过一些标准库 不过总有一些时候 有一些比较轻量的框架没有脚手架pip install fastapi-scaff…

作者头像 李华
网站建设 2026/4/18 7:05:21

Node.js工具安装VUE3开发以及创建VUE工程项目实战

本地还没有安装 Node.js, 1️⃣ 下载 Node.js 打开官网:https://nodejs.org/ 点击 LTS(长期支持版) 下载 Windows 安装包(.msi 文件) LTS 比较稳定,推荐用来做项目开发 2️⃣ 安装 Node.js 双…

作者头像 李华
网站建设 2026/4/17 19:38:57

什么是域名经纪交易?

在域名行业中,“域名经纪交易”是一个非常重要的概念。随着优质域名越来越稀缺,许多个人和企业希望通过专业机构来协助寻找目标域名、谈判价格、保障交易安全,这就催生了域名经纪服务的广泛应用。那么,究竟什么是域名经纪交易&…

作者头像 李华
网站建设 2026/4/17 14:32:36

AutoGPT与TimescaleDB集成:时序数据自动化处理

AutoGPT与TimescaleDB集成:时序数据自动化处理 在智能制造车间的深夜值班室里,传统监控系统正安静地等待下一个告警触发。而隔壁测试环境中的AI代理却主动唤醒——它刚刚完成对过去48小时设备振动数据的例行巡检,发现某台电机的谐波分量出现异…

作者头像 李华
网站建设 2026/4/18 7:37:01

AutoGPT如何检测目标不可达?早期终止机制设计

AutoGPT如何检测目标不可达?早期终止机制设计 在当前AI智能体快速演进的背景下,AutoGPT这类基于大语言模型(LLM)的自主系统正从“回答问题”转向“完成任务”。它不再只是被动响应用户指令,而是主动拆解目标、调用工具…

作者头像 李华