在 Mac OS 上升级 Node.js 到最新版本。

1006

我目前在使用Mac OS X 10.7.4操作系统上的Node.js v0.6.16版本。现在,我想将其升级到最新的Node.js v0.8.1版本。但是,我从nodejs.org下载并安装了最新的软件包文件后,在终端中输入“node -v”时,系统仍然使用v0.6.16而不是v0.8.1。我是否漏掉了什么步骤?或者,我需要在安装最新版本之前彻底卸载旧版本吗?

顺带一提,我知道nvm可以帮助管理nodejs包。

https://github.com/creationix/nvm/

有没有不使用nvm的方式来升级Node.js?

我已经谷歌过这个问题,但对于最新的Node.js,似乎没有非常清晰的答案。


你可能想先用 brew 命令双重检查是否已经安装了它。https://apple.stackexchange.com/questions/101090/list-of-all-packages-installed-using-homebrew - Adriano
4
大家好 - 这是一个6年前的问题,有一些同样古老的答案。毫无疑问,它们当时是最佳实践。但是从2018年开始,brew upgrade node应该可以正常工作了。请参见下面wprl的答案。 - pscl
4
截至2019年2月,npm网站实际上建议使用Node版本管理器(如nnvm)来安装和升级Node和npm。 - alexw
我遇到了这个问题,是因为没有必要引入“node-sass”,而且它并不需要。通过删除这个导入源,问题得到了很好的解决。这是2021年在React内部出现了类似错误信息的问题。 - ArifMustafa
只需使用“nvm install <version>” - undefined
显示剩余3条评论
32个回答

4

简单且安全的步骤

步骤1:安装NVM

brew install nvm

步骤二:创建 NVM 目录

mkdir ~/.nvm/

步骤三:配置您的环境变量。
nano ~/.bash_profile

请粘贴以下代码

export NVM_DIR=~/.nvm
source $(brew --prefix nvm)/nvm.sh

source ~/.bash_profile

第四步:仔细检查您的工作

nvm ls

第五步:安装Node

nvm install 9.x.x

步骤6:升级

nvm ls-remote

   v10.16.2   (LTS: Dubnium)
   v10.16.3   (Latest LTS: Dubnium) ..........

nvm安装v10.16.3

故障排除

Error Example #1
rm -rf /usr/local/lib/node_modules
brew uninstall node
brew install node --without-npm
echo prefix=~/.npm-packages >> ~/.npmrc
curl -L https://www.npmjs.com/install.sh | sh

https://www.chrisjmendez.com/2018/02/07/install/


3

3

Nvm Nvm是一个基于脚本的Node版本管理器。你可以按照文档中描述的curl和bash指令轻松安装它。它也可以在Homebrew上找到。

假设你已经成功安装了nvm。以下内容将安装最新版本的node。

 nvm install node --reinstall-packages-from=node

最后一种选项会将所有全局npm软件包安装到您的新版本上。这样,像mocha和node-inspector这样的软件包仍然可以正常工作。

N N是基于npm的Node.js版本管理器。您可以通过首先安装某个版本的Node.js,然后运行npm install -g n来安装它。

假设您已成功安装了n。以下命令将安装最新版本的Node.js。

sudo n latest

Homebrew Homebrew是Mac上两个流行的软件包管理器之一。假设您以前已使用brew install node安装了node,您可以使用以下命令更新formulae并升级到最新的Node.js版本。

1 brew update
2 brew upgrade node

MacPorts MacPorts是Mac的另一个软件包管理器。以下操作将更新本地端口树以获得更新版本的访问权限,然后安装最新版本的Node.js。即使您已安装了软件包的先前版本,此方法也可以正常工作。

1 sudo port selfupdate
2 sudo port install nodejs-devel

“brew upgrade node” 很容易。 - khawarizmi
这是在OSX上为我工作的内容。我可能已经安装了NVM,因为即使在与“n latest”相关的命令之后,“node -v”仍然给出“6.11.1”。Brew升级命令起作用了。谢谢。 - Khom Nazid
Macports 没有找到 "nodejs-devel" 包。我不得不卸载旧版本并安装新版本。 - tobymackenzie

1
使用nvm根据项目需求升级node。 通过Homebrew安装nvm。 brew update brew install nvm mkdir ~/.nvm nano ~/.bash_profile 在您的.bash_profile文件中(根据您的shell,您可能正在使用其他文件),添加以下内容: export NVM_DIR=~/.nvm source $(brew --prefix nvm)/nvm.sh
source ~/.bash_profile echo $NVM_DIR

1

一个简单的方法是直接访问网站https://nodejs.org/en/download/,点击下载最新版本并安装pkg文件。之后你就会得到最新的Node和npm版本。


1

首先使用以下命令安装nvm

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash

感谢@Saviah Kao

然后安装node:

nvm install node --reinstall-packages-from=node

感谢@Elad


1
您可以直接使用curl将node升级到最新版本。运行以下命令:
curl "https://nodejs.org/dist/latest/node-${VERSION:-$(wget -qO- https://nodejs.org/dist/latest/ | sed -nE 's|.*>node-(.*)\.pkg</a>.*|\1|p')}.pkg" > "$HOME/Downloads/node-latest.pkg" && sudo installer -store -pkg "$HOME/Downloads/node-latest.pkg" -target "/"

参考资料:https://nodejs.org/en/download/package-manager/#macos


0

我正在使用 Mac Mini M1。我刚刚删除了非常老旧的 node.js 和 npm 包,并决定使用 homebrew 安装它们。我发现现在 brew install node 也会安装 npm。供您参考。


0

我曾经遇到过同样的问题。这是我的解决方法,因为我从node.js网站上下载并全局安装了node.js。

我尝试了NVM(Node Version Manager)。请在终端中按以下顺序执行命令:

  1. curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash

  2. command -v nvm

  3. nvm install node

  4. node -v (确认更新)


0

这只是为那些没有使用Homebrew安装Node但在尝试使用npmMac OS X上安装软件包时遇到错误的人添加一些信息。

我找到了这篇好文章,解释了如何完全删除Node,无论您最初是如何安装它的。

在我的机器上完全删除nodenpmn之后,我只需使用Node网站提供的官方.pckg安装程序重新安装Node.js,一切都恢复正常了。

希望这能帮助到某些人。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接