npm - 如何使用 VS Code 调试 npm 本身(不是我的代码)?
问题描述
npm
npm
在's 的代码中崩溃,而不是我的。我想npm
使用 VSCode IDE 调试器对进程进行调试,这样我就可以检查调用堆栈中的变量以找出问题所在。
调试自身的正确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。
推荐阅读
- amazon-web-services - 为什么 Kubernetes (AWS EKS) 将所有工作人员注册到负载均衡器?
- python - 多个树列表并保存在 pandas DataFrame 中
- r - 将具有部分空值的嵌套列表转换为 R data.frame
- c# - MongoDB 表达式 System.InvalidOperationException:“不支持。”
- python-2.7 - boto3 中不存在 VPC Id
- python - Seaborn Factorplot 在实际图下方生成额外的空图
- c# - 循环遍历 C# 中的字典
- pandas - 我的 .loc 有多个条件一直在运行...帮我降落飞机
- swift - 如何防止 Sprite 节点相互推挤?
- ruby-on-rails - 有没有办法让 smart_listing 立即跳转到最后一页?