讲师中心 微信公众号
AI工具推荐 视频效率加速

VSCode下Node项目使用Debugger或inspector进行进程附加的策略

夜杰大大_3885

夜杰大大_3885

发布时间:2026-07-02 06:17:37

|

292人浏览过

|

来源于php中文网

原创

VSCode附加调试Node.js必须用inspector协议而非debug协议,因Node.js 6.3+已废弃debug协议;launch.json中应删去或明确设"protocol": "inspector",避免配置错误导致连接失败、断点灰色。

vscode下node项目使用debugger或inspector进行进程附加的策略

VSCode 附加调试 Node.js 进程,不是“选 Debugger 还是 inspector”,而是 inspector 协议已全面取代旧 debug 协议——Node.js 6.3+ 默认只支持 inspector,debug 协议早已废弃。强行配 "protocol": "debug" 会直接失败。

为什么 launch.json 里必须写 "protocol": "inspector"

VSCode 的 node 调试器从 v1.30+ 起默认使用 V8 Inspector Protocol(即 inspector),它基于 WebSocket 和 HTTP,比老 debug 协议更稳定、支持更多功能(如异步堆栈、ESM 模块断点)。但这个字段在多数模板里被省略,是因为 VSCode 会自动 fallback 到 inspector;一旦你显式写了 "protocol": "debug",就强制走已移除的路径,结果就是:

  • Could not connect to debug target
  • 断点永远灰色,hover 提示 This breakpoint will not be hit
  • 控制台报错 Error: Protocol error: 'Debugger.enable' wasn't found

正确做法是:要么彻底删掉 "protocol" 字段(推荐),要么明确写 "protocol": "inspector"。不要碰 debug。

attach 配置里 port 和 address 怎么填才不连错

port 必须和启动时 --inspect=9229 的端口完全一致;address 不是“要不要填”的问题,而是“填错就连不上”的关键。

Rydberg Agent Node
Rydberg Agent Node

使用一条命令部署ProbeChain Rydberg测试网代理节点。自动注册为Agent(NodeType=1),免gas,支持macOS/Linux/Windows。触发词:/r

下载
  • 本地开发:用 "address": "localhost" 或直接删掉(默认就是 localhost)
  • Docker 容器内运行:--inspect=0.0.0.0:9229 + "address": "host.docker.internal"(macOS/Windows)或容器宿主机 IP(Linux)
  • 远程服务器:确保防火墙放行该端口,且 --inspect=0.0.0.0:9229(不能是 127.0.0.1),"address" 填服务器 IP
  • 如果填了 "address": "127.0.0.1" 但进程绑的是 0.0.0.0,通常能连上;反过来(进程绑 127.0.0.1,VSCode 连 localhost)也 OK;但跨网络时,127.0.0.1 一定失败

断点灰色?八成是路径映射没对上

附加成功 ≠ 断点生效。VSCode 根据 source map 里的 sources 字段匹配当前打开的文件路径,一旦不一致,断点就变灰。

  • 检查 launch.json 中 "cwd" 是否指向实际运行目录(比如进程在 /app 启动,但你打开的是 ~/project)
  • 确认 sourceMap 生成时用了相对路径还是绝对路径;若用 Webpack/Vite,加 devtool: 'source-map' 并设 output.devtoolModuleFilenameTemplate 统一前缀
  • Docker 场景下,挂载路径差异最常见:-v $(pwd):/app 启动,但 source map 里写的是 /Users/me/project/src/... → 需在 launch.json 加 "sourceMaps": true 和 "outFiles": ["./dist/**/*.js"],再配 "sourceMapPathOverrides" 映射
  • 用 Chrome DevTools 打开 chrome://inspect,点“Configure”,加一条 file:///app/* -> ${workspaceFolder}/*,VSCode 会复用这个映射

npm script 启动时怎么加 --inspect 才不冲突

别改 npm start,单独加一个 debug script,避免污染日常命令。

  • package.json 里写:"debug": "node --inspect-brk ./src/index.js"(--inspect-brk 更安全,防止启动太快错过断点)
  • 如果用 ts-node/nodemon:用 ts-node --inspect-brk 或 nodemon --inspect-brk --exec ts-node
  • 禁用 VSCode 自动 attach("debug.node.autoAttach": "off"),否则 npm run debug 时可能弹两个调试会话,第二个连不上
  • 用 node --inspect=0.0.0.0:9229 时,确保没其他进程占着 9229;可用 lsof -i :9229 或 netstat -an | grep 9229 查

真正卡住人的从来不是配置项本身,而是进程是否真开了调试门、路径是否真实对应、端口是否可达——三者缺一,附加就只是个假动作。

热门AI工具

更多
WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

AionClaw
AionClaw Hot

AionClaw是一款面向办公、创作和编程任务的AI桌面智能体。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

PixTV
PixTV Hot

PixTV是一款面向AIGC内容创作的AI视频生成工具。

蛙蛙写作

一款AI论文写作工具,主要用于超级AI智能写作助手,适合需要提升相关任务效率的用户。

超级简历WonderCV

一款AI办公效率工具,主要用于免费求职简历模版下载制作,应届生职场人必备简历制作神器,适合需要提升相关任务效率的用户。

Laper
Laper Hot

Laper是专为编剧、导演和制片人推出的 AI 原生剧本创作工具。

火山引擎

火山引擎是一款面向企业的云计算与AI服务平台。

相关专题

更多
vscode是什么_vscode怎么安装配置
vscode是什么_vscode怎么安装配置

VS Code(Visual Studio Code)是一款免费、开源的跨平台代码编辑器,由微软开发和维护。它被广泛用于软件开发和编程,支持多种编程语言和框架。VS Code 同时提供了丰富的功能和扩展性,使开发者可以高效地编写、编辑和调试代码。

1255

2023.06.30

vscode怎么运行代码
vscode怎么运行代码

vscode是一个运行于MacOS X、Windows和Linux之上的,针对于编写现代Web和云应用的跨平台源代码编辑器;vscode免费而且功能强大,对JavaScript和NodeJS的支持非常好,自带很多功能,例如代码格式化,代码智能提示补全、Emmet插件等。php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

2612

2023.07.21

vscode使用的框架介绍
vscode使用的框架介绍

VSCode是一款跨平台代码编辑器,它基于Electron框架和Monaco Editor构建。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

1889

2024.03.14

vscode一般用来写什么语言
vscode一般用来写什么语言

VSCode是一款功能强大的代码编辑器,支持多种编程语言和文件格式。它内置对 JavaScript、Python、Java、C++、TypeScript、HTML/CSS、Go 等语言的支持。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

1707

2024.03.14

vscode可以写什么语言
vscode可以写什么语言

vscode是一款强大的代码编辑器,支持多种编程语言的开发。通过安装扩展,可以为 JavaScript/TypeScript、Python、Java、C#、PHP、Go、Ruby、Rust、HTML/CSS 等语言提供智能代码补全、调试和格式化等功能。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2587

2024.03.15

vscode中文设置方法
vscode中文设置方法

方法一:在设置页面中,搜索“locale”,并选择“zh-cn”。方法二:按“Ctrl Shift P”快捷键,输入“Configure Display Language”,将语言修改为“zh-cn”。如果上述方法无效,可考虑安装中文插件。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

1798

2024.03.15

vscode用途介绍
vscode用途介绍

Visual Studio Code(VSCode)是一款由 Microsoft 开发的多功能文本编辑器,适用于各种编程语言。作为一款开源软件,VSCode 拥有代码高亮、自动补全、调试、Git 集成等强大功能,成为程序员不可或缺的工具。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

1242

2024.03.15

vscode和visualstudio的区别
vscode和visualstudio的区别

Visual Studio是一款功能强大的集成开发环境(IDE),适用于专业开发人员进行复杂项目的构建。而VSCode则是一款轻量级的代码编辑器,更适合各种规模的项目开发。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

1096

2024.03.15

LLVM自定义Pass怎么写
LLVM自定义Pass怎么写

本专题聚焦LLVM自定义Pass开发,整理Pass类结构、run()方法、PreservedAnalyses、CMake构建、插件注册、-load-pass-plugin加载和测试用例编写流程。

80

2026.09.30

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn