如何调试代码在vscode中设置断点【教程】
发布时间 - 2026-01-21 00:00:00 点击率:次VS Code断点不触发、变量不可见或调试器未连接,根源在于语言扩展、launch.json配置及运行环境未对齐。需确认调试器启动、F5而非Ctrl+F5运行、正确设置program/cwd/env字段,并确保开发模式启用sourceMap、禁用代码优化。
VS Code 中设断点本身很简单,但真正卡住你的往往不是“怎么点”,而是断点不触发、变量看不到、或者调试器根本没连上——这些问题和你用的语言、运行方式、launch.json 配置强相关。
断点点了没反应?先确认调试器是否已正确启动
VS Code 本身不执行代码,它依赖语言对应的调试扩展(比如 Python 扩展内置 debugpy,Node.js 用 node 自带调试协议)。如果点了断点却直接跑完、控制台没进调试模式:
- 检查左下角状态栏是否显示「运行和调试」图标已激活,且当前调试配置(
launch.json)选中的是你正在编辑的文件对应环境 - 确保你不是直接按
Ctrl+F5(跳过断点),而是按F5启动调试会话 - Python 用户注意:
python.pythonPath已弃用,新版必须在launch.json的python字段指定解释器路径,或通过命令面板选择解释器(Python: Select Interpreter) - Node.js 用户若用
npm start启动,需改用node --inspect-brk模式,否则断点在入口前就失效
为什么变量值显示为 undefined 或 not available?
这通常不是断点问题,而是作用域或优化导致的调试信息缺失:
- JavaScript/TypeScript:启用
"sourceMap": true且生成了.map文件;若用了webpack或vite,确保开发模式下未开启devtool: "hidden-source-map" - Python:局部变量在
if块内定义但未执行到该分支时,调试器不会提前渲染;函数参数名若被exec()或动态赋值覆盖,也可能丢失符号信息 - 所有语言
:发布构建(
minify、tree-shaking、-O2编译选项)会移除调试符号,务必在开发配置下调试
launch.json 里最常配错的三个字段
这个配置文件是断点能否生效的中枢,写错一个字段就白点半天:
-
"program":必须是可执行入口的绝对路径或相对于workspaceFolder的路径,不能是模块名(如"program": "app.py"✅,"program": "python app.py"❌) -
"cwd":当前工作目录影响相对路径导入(比如 Python 的import utils),不设或设错会导致模块找不到,调试器静默退出 -
"env"和"envFile":环境变量冲突很常见,比如DJANGO_SETTINGS_MODULE没传进去,Django 项目直接报ImproperlyConfigured而不提示你断点在哪
断点逻辑本身极简单,难的是让整个调试链路对齐:编辑器 → 扩展 → 运行时 → 源码映射。很多人反复重启 VS Code,其实只需要打开命令面板运行一次 Developer: Toggle Developer Tools,看 Console 里有没有 Cannot connect to runtime 或 Source map warning 这类线索。
# javascript
# python
# java
# vscode
# js
# node.js
# json
# node
# go
# vite
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
Laravel用户认证怎么做_Laravel Breeze脚手架快速实现登录注册功能
Laravel如何实现登录错误次数限制_Laravel自带LoginThrottles限流配置【方法】
Windows10如何更改计算机工作组_Win10系统属性修改Workgroup
如何在 Go 中优雅地映射具有动态字段的 JSON 对象到结构体
百度浏览器网页无法复制文字怎么办 百度浏览器复制修复
如何正确下载安装西数主机建站助手?
网站制作公司哪里好做,成都网站制作公司哪家做得比较好,更正规?
在线制作视频的网站有哪些,电脑如何制作视频短片?
如何彻底删除建站之星生成的Banner?
专业商城网站制作公司有哪些,pi商城官网是哪个?
Laravel如何获取当前用户信息_Laravel Auth门面获取用户ID
如何在IIS服务器上快速部署高效网站?
微信小程序 require机制详解及实例代码
Laravel观察者模式如何使用_Laravel Model Observer配置
Laravel如何使用withoutEvents方法临时禁用模型事件
小视频制作网站有哪些,有什么看国内小视频的网站,求推荐?
Laravel事件和监听器如何实现_Laravel Events & Listeners解耦应用的实战教程
什么是javascript作用域_全局和局部作用域有什么区别?
Laravel怎么生成二维码图片_Laravel集成Simple-QrCode扩展包与参数设置【实战】
如何在阿里云通过域名搭建网站?
如何制作一个表白网站视频,关于勇敢表白的小标题?
矢量图网站制作软件,用千图网的一张矢量图做公司app首页,该网站并未说明版权等问题,这样做算不算侵权?应该如何解决?
如何快速搭建虚拟主机网站?新手必看指南
Win11应用商店下载慢怎么办 Win11更改DNS提速下载【修复】
Laravel Pest测试框架怎么用_从PHPUnit转向Pest的Laravel测试教程
Laravel如何发送系统通知_Laravel Notifications实现多渠道消息通知
Laravel如何处理JSON字段_Eloquent原生JSON字段类型操作教程
标题:Vue + Vuex + JWT 身份认证的正确实践与常见误区解析
Win10如何卸载预装Edge扩展_Win10卸载Edge扩展教程【方法】
谷歌Google入口永久地址_Google搜索引擎官网首页永久入口
详解免费开源的.NET多类型文件解压缩组件SharpZipLib(.NET组件介绍之七)
如何使用 jQuery 正确渲染 Instagram 风格的标签列表
jQuery 常见小例汇总
如何快速搭建高效可靠的建站解决方案?
Laravel如何使用Livewire构建动态组件?(入门代码)
Laravel怎么进行数据库回滚_Laravel Migration数据库版本控制与回滚操作
想要更高端的建设网站,这些原则一定要坚持!
Android Socket接口实现即时通讯实例代码
魔方云NAT建站如何实现端口转发?
如何在宝塔面板中创建新站点?
Laravel怎么配置.env环境变量_Laravel生产环境敏感数据保护与读取【方法】
西安市网站制作公司,哪个相亲网站比较好?西安比较好的相亲网站?
Windows10怎样连接蓝牙设备_Windows10蓝牙连接步骤【教程】
Laravel如何自定义分页视图?(Pagination示例)
JavaScript常见的五种数组去重的方式
如何用狗爹虚拟主机快速搭建网站?
ChatGPT回答中断怎么办 引导AI继续输出完整内容的方法
如何在阿里云域名上完成建站全流程?
Laravel路由Route怎么设置_Laravel基础路由定义与参数传递规则【详解】
Laravel如何使用Facades(门面)及其工作原理_Laravel门面模式与底层机制


