目前我在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/

有没有办法升级Node.js而不使用它?

我在谷歌上搜索过这个问题,但在我看来,对于最新的Node.js,这个问题没有非常明确的答案。


当前回答

访问http://nodejs.org,下载并运行安装程序。 它现在起作用了——至少对我来说。

其他回答

去nodejs.org网站下载最新的pkg然后安装。 这对我很有用

我使用brew来升级我的节点。它已经安装,但它位于/usr/local/Cellar/node/5.5.0,并且在/usr/local/bin/node中有一个默认节点,这让我很困扰。我不想做软链接,因为我真的不知道brew是如何组织的。 所以我下载了pkg文件,安装,我得到了这个信息:

Node.js安装在

/usr/local/bin/node

NPM安装在

/usr/local/bin/npm

确保/usr/local/bin在你的$PATH中。

现在升级完成

Nvm Nvm是一个基于脚本的节点版本管理器。您可以使用文档中描述的curl和bash一行程序轻松安装它。Homebrew上也有。

假设您已经成功安装了nvm。下面将安装node的最新版本。

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

最后一个选项是将所有全局npm包安装到新版本。这样,像mocha和node-inspector这样的包就可以继续工作。

N N是一个基于npm的节点版本管理器。你可以先安装某个版本的node,然后运行npm install -g n来安装它。

假设已成功安装n.下面将安装最新版本的node。

sudo n latest

家酿 Homebrew是Mac上两个流行的包管理器之一。假设你之前已经用brew install node安装了node。您可以使用以下方法获得最新的公式并升级到最新的Node.js版本。

1 brew update
2 brew upgrade node

MacPorts MacPorts是Mac的另一个包管理器。下面将更新本地端口树以访问更新的版本。然后它会安装最新版本的Node.js。即使您已经安装了以前版本的包,这也可以工作。

1 sudo port selfupdate
2 sudo port install nodejs-devel

我可以使用以下命令升级节点

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

您可以直接使用curl将节点升级到最新版本。执行如下命令:

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

这只是为那些没有用Homebrew安装Node,但在Mac OS X上尝试用npm安装包时遇到非常错误的人添加一些信息。

我发现了一篇很好的文章,解释了如何完全删除Node,无论您最初安装它的方式是什么。

在node, npm和n从我的机器上完全删除后,我只是使用node网站上的官方.pckg安装程序重新安装node .js,一切都恢复正常了。

希望这能帮助到一些人。