将Node.js升级到Mac OS上的最新版本

aft*_*lee 667 macos upgrade node.js

目前我在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,这个问题没有非常明确的答案.

Joh*_*mar 1254

以下是我成功升级v0.8.18v0.10.20 没有任何其他要求(如brew等)的方法(在终端中输入这些命令):

  1. sudo npm cache clean -f (强制)清除你的npm缓存
  2. sudo npm install -g n安装n(这可能需要一段时间)
  3. sudo n stable 升级到当前的稳定版本

请注意,sudo可能会提示您输入密码

关于步骤3的附加说明:stable可以交换latest,lts(长期支持)或任何特定版本号,例如0.10.20.

如果在键入时未显示版本号node -v,则可能必须重新启动.

这些说明也可以在这里找到:davidwalsh.name/upgrade-nodejs
有关n包的 更多信息,请访问:npmjs.com/package/n
有关Node.js发布计划的更多信息:github.com/nodejs/Release

  • 努力在macos x snow leopard中将节点从v0.10更新到v0.12.谢谢. (5认同)
  • `sudo n lts`作为最后一步获得长期支持版本 (4认同)
  • 这不会设置自制程序的活动节点版本。如何设置主节点版本? (4认同)
  • FWIW您可以使用'n lts'来安装长期支持版本而不是当前的稳定版本(即在撰写本文时为4.4.3而不是5.10.1) (3认同)
  • Brew正在发生错误.目前,这是正确的答案. (2认同)
  • 这对我没有用。难道我做错了什么? (2认同)
  • 这有效,但没有人解释为什么安装"n"的命令有帮助.我今天才发现"n"是一个Node.js版本管理器,在npm js网站上有所解释 - https://www.npmjs.com/get-npm (2认同)

wpr*_*prl 841

如果您最初使用Homebrew安装Node.js,请运行:

brew update
brew upgrade node
npm update -g npm
Run Code Online (Sandbox Code Playgroud)

或者作为一个单行:

brew update && brew upgrade node && npm update -g npm
Run Code Online (Sandbox Code Playgroud)

注意:如果你有npm --version<2.7.1,你应该替换update(上面)install.


更改版本的便捷方法是使用nvm:

brew install nvm
Run Code Online (Sandbox Code Playgroud)

要使用nvm安装最新版本的Node.js:

nvm install node
Run Code Online (Sandbox Code Playgroud)

如果您通过软件包安装,则从nodejs.org下载最新版本.请参阅安装Node.js并更新npm.

  • 我只是赞成这个答案,但是等了7分钟后,brew告诉我安装失败了...我也试过`port upgrade node`,但是brew已经搞砸了包和端口现在找不到节点了...最后我走了到nodejs.org下载安装包,并繁荣!一切顺利,包括npm! (12认同)
  • 如果您的节点版本仍未更新,请按照上述说明运行`npm install -g node`. (7认同)
  • @Jinzhao建议不要安装多个Homebrew,MacPorts或Fink. (3认同)
  • 我希望有某种方法可以确定我是否使用brew、port或其他机制安装了某个软件,因为我永远记不起来! (3认同)
  • @afterglowlee在重新安装新节点之前,您可能会尝试卸载旧节点:http://stackoverflow.com/questions/9044788/how-do-i-uninstall-nodejs-installed-from-pkg-mac-os-x (2认同)
  • 在当前的Brew版本中它声明"如果你更新npm本身,请不要使用npm update命令.上游推荐的更新npm的方法是:npm install -g npm @ latest" (2认同)

Ken*_*aga 165

因为在搜索如何在mac上升级nodejs时,这似乎是谷歌的顶级,我将为未来的任何人提供我的小费,尽管它的年龄.

通过NPM升级
您可以使用上面@Mathias描述的方法,或通过终端选择以下更简单的方法.

sudo npm cache clean -f
sudo npm install -g n
sudo n stable
Run Code Online (Sandbox Code Playgroud)

之后您可以选择确认升级

node -v
Run Code Online (Sandbox Code Playgroud)

您的nodejs应该已升级到最新版本.如果你想升级到特定的一个说v0.8.19然后而不是

sudo n stable
Run Code Online (Sandbox Code Playgroud)

使用

sudo n 0.8.19
Run Code Online (Sandbox Code Playgroud)

编辑 除非您需要,否则请避免使用sudo.请参阅评论中Steve的评论

  • 为什么你会回答一个答案,而不是添加一个解释原因的评论? (4认同)
  • 有时在不需要时使用sudo实际上会弄得一团糟,因为你最终会得到`root`拥有的文件,然后在没有sudo的情况下就无法修改. (4认同)
  • 这有效,但是:是否真的有必要在`cache clean`上使用`--force`标志?前两个命令我不需要`sudo`. (2认同)

Spo*_*ken 56

转到http://nodejs.org并下载并运行安装程序.它现在起作用 - 至少对我来说.

  • 可能是最简单的方法. (4认同)

fij*_*ron 44

您可以安装nvm并安装多个版本的Node.js.

curl https://raw.github.com/creationix/nvm/master/install.sh | sh
source ~/.nvm/nvm.sh
Run Code Online (Sandbox Code Playgroud)

然后运行:

nvm install 0.8.22  #(or whatever version of Node.js you want)
Run Code Online (Sandbox Code Playgroud)

您可以看到已安装的版本:

nvm list
Run Code Online (Sandbox Code Playgroud)

你可以在以下版本之间进行更改:

nvm use 0.8.22
Run Code Online (Sandbox Code Playgroud)

使用NVM的好处在于您可以并排测试不同的版本.如果不同的应用程序需要不同版本的Node.js,您可以同时运行它们.

  • 我现在正在使用这种方法.在我看来,这是保持多个版本在同一台机器上运行的最佳方式. (2认同)

Sha*_*hid 27

我使用Node版本管理器(称为n).

npm install -g n
Run Code Online (Sandbox Code Playgroud)

然后

n latest
Run Code Online (Sandbox Code Playgroud)

要么

n stable
Run Code Online (Sandbox Code Playgroud)

  • LTS版本`n lts` (2认同)

Mos*_*man 27

升级node版本而不安装任何包,甚至不安装nvm本身:

sudo npx n stable
Run Code Online (Sandbox Code Playgroud)

说明
这种方法类似于 的Johan Dettmar答案。唯一的区别是软件包n没有安装在本地计算机上。


Tar*_*ngh 23

只需转到节点JS网站并安装最新版本.

请安装最新版本而不是推荐的稳定版本.它将让您自由地在节点上使用最新的ES6功能.

可以在这里找到节点JS.

还要更新npm,你必须使用这个命令.

sudo npm i -g npm@latest

你所有的项目都可以正常工作.


mac的其他选项:: brew update && brew install node && npm -g npm


Nic*_*ams 20

在macOS上,自制软件推荐的方法是运行

brew install node
npm install -g npm@latest
Run Code Online (Sandbox Code Playgroud)

终端命令的屏幕截图


小智 13

在 Mac 上更新 Node.js 有五种不同的方法(而且还在增加?):

  1. 从 nodejs.org 下载安装较新的二进制文件

  2. 通过 Homebrew 更新 Node.js

    命令:brew update && brew upgrade node

  3. 使用节点版本管理器 (NVM) 更新 Node.js

    命令:nvm install {version} && nvm use {version}

  4. 使用 n 包管理器更新 Node.js

    命令:sudo n latest

  5. 通过 MacPorts 更新 Node.js

    命令(同版本更新):sudo port selfupdate && sudo port upgrade {version}

如果您仍在使用较旧的 MacOS 版本,那么使用轻量级、专用包管理器(例如n或 )可能会更好nvm


Roh*_*ale 11

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

nvm install node --reinstall-packages-from=node
Run Code Online (Sandbox Code Playgroud)


小智 10

现在这对我有用:

  1. 须藤 npm install -gn
  2. 须藤最新

快乐的代码!


Mah*_*rus 9

很简单。

  sudo npm i -g n
Run Code Online (Sandbox Code Playgroud)

然后你可以指定你想要的版本。

sudo n 12.8.0 
Run Code Online (Sandbox Code Playgroud)

干杯!!


Jan*_*ter 8

可悲的是,n对我没用.我用node version manager or nvm它,它就像一个魅力.下面是关于如何安装的链接nvm:https://github.com/creationix/nvm#installation

  • nvm i 8.11.2 升级到最新的LTS
  • nvm use 8.11.2 用它
  • node -v 检查你的最新版本


Luc*_*Liu 6

转到网站nodejs.org并下载最新的pkg然后安装.这个对我有用

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

Node.js 安装在

/usr/local/bin/node
Run Code Online (Sandbox Code Playgroud)

npm 安装在

/usr/local/bin/npm
Run Code Online (Sandbox Code Playgroud)

确保它/usr/local/bin在$ PATH中.

现在升级完成了


BRo*_*ers 5

你可以去nodejs.org并下载最新的软件包.它会适合您更新.NPM也将更新.

  • 到目前为止最简单,如果你最初通过网站安装它. (2认同)

Sav*_*Kao 5

我尝试过的这两种方法不起作用:

  1. 使用 npm

sudo npm cache clean -f

sudo npm install -g n

sudo n stable

  1. 从官方网站手动安装节点(https://nodejs.org/en/

尝试后,node -v仍然显示旧版本的node。


下面的方法对我有用:

第1步:安装nvm(更多详细信息:https ://github.com/creationix/nvm#installation )

打开终端并输入以下命令:

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

关闭终端并重新打开它。

键入以下命令检查 nvm 是否已安装:

command -v nvm

在此输入图像描述

步骤 2:要下载、编译并安装最新版本的 Node,请输入以下命令:

nvm install node(“node”是最新版本的别名)

检查节点是否获取最新版本(v10.11.0)。

在此输入图像描述

安装最新的节点也会安装最新的 npm。

检查 npm 是否获取最新版本(6.4.1)。

在此输入图像描述


Nar*_*ddy 5

简单又安全的步骤

第1步:安装NVM

brew install nvm
Run Code Online (Sandbox Code Playgroud)

步骤2:为NVM创建目录

mkdir ~/.nvm/
Run Code Online (Sandbox Code Playgroud)

步骤 3:配置环境变量

nano ~/.bash_profile
Run Code Online (Sandbox Code Playgroud)

粘贴下面的代码

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

source ~/.bash_profile
Run Code Online (Sandbox Code Playgroud)

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

nvm ls
Run Code Online (Sandbox Code Playgroud)

第5步:安装节点

nvm install 9.x.x
Run Code Online (Sandbox Code Playgroud)

第六步:升级

nvm ls-remote

   v10.16.2   (LTS: Dubnium)
   v10.16.3   (Latest LTS: Dubnium) ..........
Run Code Online (Sandbox Code Playgroud)

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
Run Code Online (Sandbox Code Playgroud)

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