You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

NVM切换Node.js 18后,npm脚本仍使用Node.js 12问题求助

问题:npm脚本未使用nvm指定的Node.js 18版本,反而调用v12.3.1

问题现象

  • 已通过nvm切换至Node.js 18.14.2,但执行npm run {scriptName}时,脚本实际运行环境为Node.js v12.3.1
  • 执行nvm install 14 && nvm use 14后,脚本可正常使用Node.js 14版本

已排查的信息

nvm版本列表状态

执行nvm ls输出:

v14.21.3
->     v18.14.2
default -> 18.14.2 (-> v18.14.2)
iojs -> N/A (default)
unstable -> N/A (default)
node -> stable (-> v18.14.2) (default)
stable -> 18.14 (-> v18.14.2) (default)
lts/* -> lts/hydrogen (-> N/A)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.17.0 (-> N/A)
lts/dubnium -> v10.24.1 (-> N/A)
lts/erbium -> v12.22.12 (-> N/A)
lts/fermium -> v14.21.3
lts/gallium -> v16.19.1 (-> N/A)
lts/hydrogen -> v18.15.0 (-> N/A)

终端与脚本内的Node版本不一致

  • 终端执行which node结果:~/.nvm/versions/node/v18.14.2/bin/node
  • 在脚本中加入以下代码后,输出为stdout v12.3.1:
const { execSync } = require('child_process');
const stdout = execSync('node --version');
console.log('stdout ', stdout.toString());

当前环境版本信息

  • npm版本:6.14.18
  • nvm版本:0.39.3

已尝试的无效操作

  • 删除所有可定位到的Node.js安装(包括brew安装的版本)
  • 卸载并重装nvm,清理旧安装文件后,终端执行which node无结果,但脚本仍调用v12.3.1

求助

如何找到Node.js v12.3.1的安装位置,或解决脚本调用错误Node版本的问题?


内容的提问来源于stack exchange,提问作者vijayagurdeep

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 05:17:35