一篇带给你Vscode调试Node.js指南

2025-05-29 0 38

一篇带给你Vscode调试Node.js指南

前言:调试代码不管对于开发还是学习源码都是非常重要的技能,本文简单介绍vscode调试Node.js相关代码的调试技巧。

一、调试业务JS

调试业务JS可能是普遍的场景,随着Node.js调试工具的成熟,调试也变得越来越简单。下面是vscode的lauch.json配置。

  1. {
  2. "version":"0.2.0",
  3. "configurations":[
  4. {
  5. "type":"node",
  6. "request":"attach",
  7. "name":"AttactProgram",
  8. "port":9229
  9. }
  10. ]
  11. }

1.在JS里设置断点,执行node –inspect index.js 启动进程,会输出调试地址。

一篇带给你Vscode调试Node.js指南

2.点击虫子,然后点击绿色的三角形。

一篇带给你Vscode调试Node.js指南

3.vscode会连接Node.js的WebSocket服务。

4.开始调试(或者使用Chrome Dev Tools调试)。

调试Addon的C++

写Addon的场景可能不多,但是当你需要的时候,你就会需要调试它。下面的配置只可以调试C++代码。

  1. {
  2. "version":"0.2.0",
  3. "configurations":[
  4. {
  5. "name":"DebugnodeC++addon",
  6. "type":"lldb",
  7. "request":"launch",
  8. "program":"node",
  9. "args":["${workspaceFolder}/node-addon-examples/1_hello_world/napi/hello.js"],
  10. "cwd":"${workspaceFolder}/node-addon-examples/1_hello_world/napi"
  11. },
  12. ]
  13. }

1.在C++代码设置断点。

一篇带给你Vscode调试Node.js指南

2.执行node-gyp configure && node-gyp build –debug编译debug版本的Addon。

3. JS里加载debug版本的Addon。

一篇带给你Vscode调试Node.js指南

4.点击小虫子开始调试

一篇带给你Vscode调试Node.js指南

三、调试Addon的C++和JS

Addon通常需要通过JS暴露出来使用,如果我们需要调试C++和JS,那么就可以使用以下配置。

  1. {
  2. "version":"0.2.0",
  3. "configurations":[
  4. {
  5. "name":"DebugnodeC++addon",
  6. "type":"node",
  7. "request":"launch",
  8. "program":"${workspaceFolder}/node-addon-examples/1_hello_world/napi/hello.js",
  9. "cwd":"${workspaceFolder}/node-addon-examples/1_hello_world/napi"
  10. },
  11. {
  12. "name":"AttachnodeC/C++Addon",
  13. "type":"lldb",
  14. "request":"attach",
  15. "pid":"${command:pickMyProcess}"
  16. }
  17. ]
  18. }

和2的过程类似,点三角形开始调试,再选择Attach node C/C++ Addon,然后再次点击三角形。

一篇带给你Vscode调试Node.js指南

选择attach到hello.js中。

一篇带给你Vscode调试Node.js指南

开始调试

四、调试Node.js源码C++

我们不仅用Node.js,我们可能还会学习Node.js源码,学习源码的时候就少不了调试。可以通过下面的方式调试Node.js的C++源码。

  1. ./configure–debug&&make

使用以下配置:

  1. {
  2. "version":"0.2.0",
  3. "configurations":[
  4. {
  5. "name":"(lldb)启动",
  6. "type":"cppdbg",
  7. "request":"launch",
  8. "program":"${workspaceFolder}/out/Debug/node",
  9. "args":[],
  10. "stopAtEntry":false,
  11. "cwd":"${fileDirname}",
  12. "environment":[],
  13. "externalConsole":false,
  14. "MIMode":"lldb"
  15. }
  16. ]
  17. }

在node_main.cc的main函数或任何C++代码里打断点,点击小虫子开始调试

五、调试Node.js源码C++和JS代码

Node.js的源码不仅仅有C++,还有JS,如果我们想同时调试,那么就使用以下配置。

  1. {
  2. "version":"0.2.0",
  3. "configurations":[
  4. {
  5. "name":"(lldb)启动",
  6. "type":"cppdbg",
  7. "request":"launch",
  8. "program":"${workspaceFolder}/out/Debug/node",
  9. "args":["–inspect-brk","${workspaceFolder}/out/Debug/index.js"],
  10. "stopAtEntry":false,
  11. "cwd":"${fileDirname}",
  12. "environment":[],
  13. "externalConsole":false,
  14. "MIMode":"lldb"
  15. }
  16. ]
  17. }

1.点击调试

一篇带给你Vscode调试Node.js指南

2.在vscode调试C++,执行完Node.js启动的流程后会输出调试JS的地址。

一篇带给你Vscode调试Node.js指南

3.在浏览器连接WebSocket服务调试JS。

一篇带给你Vscode调试Node.js指南

一篇带给你Vscode调试Node.js指南

原文链接:https://mp.weixin.qq.com/s/kC_QpiJrE5ZSw16rv8jLzA

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 一篇带给你Vscode调试Node.js指南 https://www.kuaiidc.com/92147.html

相关文章

发表评论
暂无评论