求助:NPM脚本持续提示‘node未识别’,$PATH已配置nodejs
针对你的NPM脚本无法识别Node的排查方案

根据你描述的情况——Windows 10更新后,在ConEMU的Git Bash里,npm脚本外能正常调用node,但脚本内提示未识别——大概率是环境变量在npm子进程中未正确继承导致的,给你几个实操的解决步骤:
第一步:验证npm脚本的PATH环境
先修改你的package.json,添加一个测试脚本,对比外部和脚本内的PATH差异:"scripts": { "check-path": "echo $PATH && node -v" }在Git Bash里先单独执行
echo $PATH,再运行npm run check-path,查看脚本输出的PATH中是否包含node的安装路径(比如/c/Program Files/nodejs)。如果没有,说明npm没有正确继承系统PATH。第二步:强制指定node绝对路径到npm脚本
如果确认是PATH未继承,你可以直接在脚本里使用node的绝对路径。先在Git Bash里执行which node拿到完整路径(比如/c/Program Files/nodejs/node.exe),然后修改你的业务脚本:"scripts": { "your-script": "\"/c/Program Files/nodejs/node.exe\" your-entry-file.js" }注意路径包含空格时,要添加转义的双引号。
第三步:重置ConEMU和Git Bash的环境缓存
Windows更新后,ConEMU可能会缓存旧的环境变量,试试以下操作:- 彻底关闭所有ConEMU窗口后重新打开
- 按下
Win+Alt+P打开ConEMU设置,找到「环境」选项,确保勾选「继承系统环境变量」 - 在Git Bash里执行
source ~/.bashrc,手动刷新bash的环境变量
第四步:调整Windows系统PATH的优先级
系统更新可能会把系统自带路径移到node路径前面,导致npm无法识别node:- 右键「此电脑」→「属性」→「高级系统设置」→「环境变量」
- 在「系统变量」中找到
PATH,将node的安装路径(比如C:\Program Files\nodejs)移到列表最顶端 - 重启所有终端窗口后再测试
内容的提问来源于stack exchange,提问作者Denno
相关产品推荐
相关产品推荐

