Node.js npm在Mac Big Sur上出现错误,无法安装或运行
我刚刚用下面的命令安装了node,下面是输出 $brew安装节点 $node-vNode.js npm在Mac Big Sur上出现错误,无法安装或运行,node.js,npm,Node.js,Npm,我刚刚用下面的命令安装了node,下面是输出 $brew安装节点 $node-v v9.4.0 $command-v节点 /usr/local/bin/node $ls-l/usr/local/bin/node -rwxr-xr-x 1 icyborg wheel 35697312 Jan 14 2018 /usr/local/bin/node 跑步后 $brew升级节点 警告:节点15.9.0已安装 但当我这么做的时候 $node-v v9.4.0 现在当我试着去做 npm -v
v9.4.0
$command-v节点
/usr/local/bin/node
$ls-l/usr/local/bin/node
-rwxr-xr-x 1 icyborg wheel 35697312 Jan 14 2018 /usr/local/bin/node
跑步后
$brew升级节点
警告:节点15.9.0已安装
但当我这么做的时候
$node-v
v9.4.0
现在当我试着去做
npm -v
它给出了这个错误
TypeError: Cannot destructure property `stat` of 'undefined' or 'null'.
at Object.<anonymous> (/usr/local/lib/node_modules/npm/node_modules/@npmcli/node-gyp/lib/index.js:2:29)
at Module._compile (module.js:660:30)
at Object.Module._extensions..js (module.js:671:10)
at Module.load (module.js:573:32)
at tryModuleLoad (module.js:513:12)
at Function.Module._load (module.js:505:3)
at Module.require (module.js:604:17)
at require (internal/module.js:11:18)
at Object.<anonymous> (/usr/local/lib/node_modules/npm/node_modules/@npmcli/run-script/lib/run-script-pkg.js:4:55)
at Module._compile (module.js:660:30)
/usr/local/lib/node_modules/npm/node_modules/@npmcli/config/lib/index.js:163
throw new Error('call config.load() before reading values')
^
它现在正在工作。Node.js 9已经不受支持大约3年了。您看到的错误很可能是由于将旧的Node.js与新的npm一起使用造成的 当我运行
brew信息节点
时,它会显示15.2.0可用。因此,要么您的brew
安装出现问题,要么您的路径(或作为别名)中的某个地方有一个旧版本的Node.js,它运行的不是brew
安装的版本
运行命令-v node
以了解正在执行的node.js。如果它不是以/usr/local/bin/node
开头,那么这就是您的问题。如果它是/usr/local/bin/node
,请运行ls-l/usr/local/bin/node
,以确保它是指向/usr/local/cillar/node
中某个内容的链接。如果不是,那是你的问题。。。(编辑#2:…并作为注释中的操作说明,brew链接——覆盖节点
为他们修复了该问题。因此,阅读本文的任何其他人都可以尝试。)
编辑#1:因为您已经用上述信息更新了问题:看起来您大概在3年前用常规安装程序安装了Node.js 9,而不是
brew
。同样,您可以通过使用brew卸载并使用nvm
重新安装来避免所有这些麻烦,如下一段所述
通常,如果在个人计算机上而不是服务器上安装Node.js,我建议卸载brew
版本并使用每用户版本管理器安装。这是一个可靠的选择:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.37.2/install.sh | bash
我已经用输出更新了这个问题。看起来您大概在3年前用常规安装程序而不是brew安装了Node.js 9。同样,您可以通过使用brew卸载并使用nvm重新安装来避免所有这些麻烦,如回答的最后一段所述。谢谢。我运行了brew链接--覆盖节点,它解决了这个问题。现在node-v显示为15,npm也在工作。啊,酷,我将把它添加到答案中,这样其他出现在这里的人都能轻松找到它。
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.37.2/install.sh | bash