node.js未加入系统path是根本原因,需下载lts版.msi安装包并勾选“add to path”,安装后重启所有终端和vscode,或手动将安装路径(如c:\program files\nodejs)添加至系统环境变量path中。

node -v 报错:'node' 不是内部或外部命令
根本问题不是 VSCode 配置错了,而是 Windows 没把 Node.js 加进系统 PATH。VSCode 内置终端完全依赖系统环境变量,它不会“猜”你装在哪。
- 去
nodejs.org/download下载 LTS 版本的.msi安装包,双击运行,务必勾选 “Add to PATH”(跳过这步 90% 会失败) - 安装完后,必须关闭所有已打开的 CMD/PowerShell/VSCode 窗口,再新开一个 CMD,执行
node -v和npm -v—— 有输出才算真正生效 - 如果仍报错,手动把 Node.js 安装目录(如
C:\Program Files\nodejs)加到「系统环境变量」→「Path」里,然后重启 VSCode(不是仅重启终端) - 别用含中文、空格或特殊符号的路径安装 Node.js(例如
D:\我的软件\nodejs),npm 后续可能静默失败
VSCode 终端能跑 node,但调试时提示 “Cannot find runtime 'node'”
说明 node 命令虽可用,但 VSCode 调试器没读到完整环境,或者 launch.json 指向了错误入口。
- 确认你是通过「文件 → 打开文件夹」打开整个项目根目录(含
package.json或主 JS 文件),不是只打开单个.js文件 - 按
Ctrl+Shift+P输入Debug: Open Configuration,选Node.js → Current File,生成的launch.json中"program"应为"${file}"(调试当前文件)或"${workspaceFolder}/index.js"(固定入口) - 别改
"type": "node"和"request": "launch"—— 这两个是调试器识别协议的关键,改错直接导致无法启动 - 断点前务必先按
Ctrl+S保存文件,VSCode 默认不自动保存未修改的文件,调试时跑的是旧版本
npm install -g 的命令(比如 nodemon)在 VSCode 终端里找不到
这不是 VSCode 的 bug,而是全局 bin 目录没被纳入系统 PATH,尤其当你改过 npm 全局路径时。
- 执行
npm config get prefix查看当前全局安装路径(默认是C:\Users\XXX\AppData\Roaming\npm) - 把这个路径手动加进「系统环境变量」→「Path」里(注意:是用户变量还是系统变量,要和你安装 Node.js 时一致)
- 加完后,必须完全退出 VSCode 进程(Windows 任务管理器里确认
Code.exe已结束),再重新打开 - 国内建议提前配镜像:
npm config set registry https://registry.npmmirror.com,避免后续npm install卡死
launch.json 里想用 npm start 或 nodemon 调试
不能直接把 "program" 设成 "npm" 或 "nodemon" —— VSCode 调试器只支持直接 attach 到 Node.js 进程,不支持 shell 命令链式调用。
- 要调试
npm start:设"program": "npm","args": ["start"],并加"console": "integratedTerminal",否则看不到日志输出 - 要用
nodemon热重载调试:先在终端手动运行nodemon --inspect-brk index.js,再在launch.json中配置"type": "node"+"request": "attach"+"port": 9229 - 注意
--inspect-brk是关键 —— 它让进程启动即暂停,等 VSCode attach 上再继续,否则断点来不及命中
launch.json 里那几个字段的语义是否被准确理解——而不是功能有多复杂。











