Visual Studio Code中Node.js运行调试报错:进程退出代码134
解决Node.js在VSCode中运行调试报退出码134的问题
先处理内存相关问题
- 你标注的内存4.7MB/7.5MB应该是笔误,推测是4.7GB/7.5GB。Node.js调试时触发SIGABRT(退出码134)常和内存溢出有关,可在调试配置里手动增加内存限制:
打开.vscode/launch.json,在配置项里添加:
这里分配2GB内存,可根据剩余内存调整数值。"runtimeArgs": ["--max-old-space-size=2048"] - 关闭后台无关程序,释放更多系统内存后再尝试调试。
排查Node.js版本兼容性
- 过新或过旧的Node.js版本可能和VSCode调试器不兼容,建议切换到LTS稳定版本(比如18.x或20.x):
用nvm(Node版本管理器)来快速切换版本,避免反复重装系统级Node.js。安装完成后在VSCode终端执行node -v确认版本生效。 - 若没有nvm,卸载当前Node.js后,去官网下载对应LTS版本重新安装,注意选择和系统架构匹配的安装包。
重置VSCode的调试配置与插件
- 删除项目根目录下的
.vscode/launch.json,然后重新生成调试配置:点击调试面板的「创建launch.json文件」,选择「Node.js」,用默认配置测试是否能正常运行。 - 禁用所有VSCode插件,只保留「JavaScript Debugger」,再尝试调试。如果正常,再逐个启用其他插件,排查是否存在插件冲突。
- 重置VSCode全局设置:打开命令面板(Ctrl+Shift+P),输入
Preferences: Reset Settings,选择重置所有设置(记得提前备份自己的个性化配置)。
系统层面的检查
- 检查系统是否缺失Node.js依赖库(比如Linux/macOS下的libc++):
Linux终端执行ldd $(which node)查看依赖项,若有缺失,用系统包管理器(如apt、yum)安装对应库。 - 暂时关闭杀毒软件或防火墙,排查是否是安全软件拦截了Node.js进程。
- 确认Node.js安装目录和VSCode安装目录都有读写权限,避免因权限不足导致进程异常退出。
终极验证步骤
- 跳过VSCode,直接在系统终端运行代码:执行
node your-file.js,观察是否同样报错:- 如果终端也报错,说明问题出在Node.js本身或代码上,先写一个极简测试代码(比如
console.log('test'))验证基础运行是否正常,排查是否是代码导致的内存溢出或语法问题。 - 如果终端运行正常,那问题肯定在VSCode的配置或插件上,回到前面的VSCode重置步骤逐一排查。
- 如果终端也报错,说明问题出在Node.js本身或代码上,先写一个极简测试代码(比如
内容的提问来源于stack exchange,提问作者Joao Matos
相关产品推荐
相关产品推荐

