VSCode终端node -v报command not found,90%因未继承系统PATH:macOS/Linux需设"terminal.integrated.shellArgs": ["-l"]并彻底重启,Windows需确认Node路径已加入系统环境变量或手动配置"terminal.integrated.env.windows"补全PATH。

VSCode终端里执行node -v报command not found或不是内部或外部命令,90%不是Node没装,而是VSCode根本没拿到你系统PATH——它启动的是个“裸壳”终端,跳过了~/.zshrc、nvm.sh或Windows环境变量。
先确认Node真在系统里,别被假象骗了
打开系统原生终端(不是VSCode里的):
- macOS/Linux运行
which node和node -v,有输出才算通过 - Windows运行
where node和node -v,路径不能含中文、空格或括号 - 如果这步就失败:重装Node.js,Windows务必勾选
Add to PATH;macOS用Homebrew装完要重启终端;Linux手动安装的得自己加export PATH到~/.bashrc或~/.zshrc
VSCode终端PATH比系统终端短?启用登录shell
在VSCode集成终端里运行echo $PATH(macOS/Linux)或echo %PATH%(Windows),复制结果,再跟系统终端里同一命令输出逐行对比。缺了/opt/homebrew/bin、$HOME/.nvm/versions/node/v18.18.2/bin或%APPDATA%
pm这类路径,就是确诊了。
使用约定式提交(Conventional Commits)生成标准化的 Git 提交信息。适用于以下场景: (1) 暂存更改时需要提交信息; (2) 审查 diff 时希望获得结构化摘要; (3) 编写 PR 描述或变更日志(changelog)条目; (4) 用户明确要求“为本次更改编写提交信息”。 该功能会分析已暂存/未暂存的 diff,并生成按类型(type)划分范围的提交信息。
- macOS/Linux:VSCode设置中搜
terminal.integrated.shellArgs,设为["-l"](小写L);改完必须关闭所有已打开的集成终端面板,再按Ctrl + `新建一个 - Windows:别用开始菜单或桌面图标双击启动VSCode——从PowerShell里执行
code .启动;或在VSCode设置中搜terminal.integrated.env.windows,填入:{"PATH": "${env:PATH};C:\Users\XXX\AppData\Roaming\npm;C:\Program Files\Git\bin"}(反斜杠必须双写) - nvm-windows用户:装完必须运行
nvm use 18.19.0激活,否则node命令永远不可用
PowerShell报“无法加载.ps1脚本”?执行策略拦住了
Windows上VSCode默认终端是PowerShell,而npm全局安装的CLI(如npx)会生成.ps1包装脚本。PowerShell默认Restricted策略会静默拒绝,错误提示常为:File xxx.ps1 cannot be loaded because running scripts is disabled on this system。
- 在VSCode终端中运行:
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser(无需管理员) - 验证是否生效:
Get-ExecutionPolicy -Scope CurrentUser应返回RemoteSigned - 关闭所有已打开的终端面板,再按
Ctrl+Shift+`新建一个——旧终端不会自动刷新策略 - 避免用
Unrestricted或Bypass,公司设备可能被组策略覆盖
调试时报“Cannot launch program”?不是PATH问题,是program填错了
这个错误和终端PATH完全无关,是VSCode调试器找不到可执行JS文件。它只认编译后的.js,不认.ts、.mjs或未构建的源码。
- TypeScript项目:
"program": "${workspaceFolder}/dist/index.js",且tsconfig.json中"sourceMap": true,确保.js.map和.js同目录 - ESM项目(
package.json含"type": "module"):"runtimeArgs": ["--experimental-specifier-resolution=node"]必须加上,否则import语句直接报错 - 别用
"runtimeExecutable": "npm"——它无法注入断点,调试器会静默失败 - 如果项目路径含中文,必须重装Node.js到纯英文路径(如
C: ools odejs),否则调试器启动前就被Windows加载器截断
最易忽略的一点:改完任何PATH或shell配置后,必须彻底退出VSCode所有进程(macOS右键Dock→Quit,Windows任务管理器杀掉所有Code.exe),再从系统终端启动,否则新配置永远不会生效。

















