如何使用VS Code调试npm本身(不是我的代码)?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用VS Code调试npm本身(不是我的代码)?相关的知识,希望对你有一定的参考价值。
npm
在npm
的代码中崩溃,而不是我的代码。我想使用VSCode IDE调试器调试到npm
进程,以便我可以检查调用堆栈中的变量以试图找出出错的地方。
什么是正确的launch.json
配置调试npm
本身?
答案
我浪费了半个小时试图解决这个问题,所以在这里分享答案来帮助别人。
诀窍(至少在我的Mac上)是运行npm-cli.js
而不是运行npm
可执行文件。
这是我用来调试launch.json
的npm outdated -g
配置。要调试其他npm命令,只需更改下面的args
即可。
{
"type": "node",
"request": "launch",
"name": "Debug NPM Outdated",
"cwd": "/usr/local/lib/node_modules/npm/bin/",
"args": [
"npm-cli.js",
"outdated",
"-g",
],
"protocol": "inspector",
"console": "integratedTerminal",
"internalConsoleOptions": "neverOpen",
"disableOptimisticBPs": true
},
我没有测试过他是否能够调试由npm
运行的其他代码,但是如果这对于调试webpack插件有用,那就太酷了!
顺便说一句,我试图捕获的具体npm
错误已在npm@6.9.1
中修复,应尽快发布。见https://github.com/npm/cli/pull/173。
以上是关于如何使用VS Code调试npm本身(不是我的代码)?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 VS Code 中调试颤振 build_runner 构建?