ChatGPT解决这个技术问题 Extra ChatGPT

在 Mac OS 上将 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,这个问题没有非常明确的答案。

不确定答案,但为了澄清,当您更新它时是否正在运行 Node 进程?
不,我认为没有任何 Node 进程正在运行。重新启动操作系统后,“node -v”命令仍然显示 v0.6.16 正在运行。
您可能需要先仔细检查您是否使用 brew apple.stackexchange.com/questions/101090/… 安装了它
伙计们 - 这是一个 6 岁的问题,并且有一些同样古老的答案。毫无疑问,它们是当时的最佳实践。但截至 2018 年,brew upgrade node 应该可以正常工作。请参阅下面 wprl 的答案。
@pscl 截至 2019 年 2 月,npm website 实际上建议使用像 nnvm 这样的 Node 版本管理器来安装和升级 Node 和 npm。

J
Johan Dettmar

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

sudo npm cache clean -f (force) clear you npm cache sudo npm install -gn install n (这可能需要一段时间) sudo n stable 升级到当前稳定版本

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

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

如果键入 node -v 时没有显示版本号,您可能需要重新启动。

这些说明也可在此处找到:davidwalsh.name/upgrade-nodejs
有关 n 软件包的更多信息可在此处找到:npmjs.com/package/n
有关 Node.js 发布时间表的更多信息:github.com/nodejs/Release


致力于在 macos x 雪豹中将节点从 v0.10 更新到 v0.12。谢谢你。
FWIW,您可以使用“n lts”来安装长期支持版本而不是当前的稳定版本(即在撰写本文时 4.4.3 而不是 5.10.1)
Brew 发生错误。这是目前的正确答案。
sudo n lts 最后一步为您提供长期支持版本
这行得通,但没有人解释为什么安装“n”的命令有什么帮助。我今天才发现“n”是一个 Node.js 版本管理器,正如 npm js 网站上所解释的那样 - npmjs.com/get-npm
w
wprl

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

brew update
brew upgrade node
npm install -g npm

或作为单行:

brew update && brew upgrade node && npm install -g npm

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

brew install nvm

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

nvm install node

如果您通过软件包安装,请从 nodejs.org 下载最新版本。请参阅 Installing Node.js and updating npm


@afterglowlee 您可以在重新安装新节点之前尝试卸载旧节点:stackoverflow.com/questions/9044788/…
我只是赞成这个答案,但是等待 7 分钟后,brew 告诉我安装失败...我也尝试了 port upgrade node,但是 brew 已经搞砸了包并且端口现在找不到节点...最后我去了 nodejs .org下载安装包,轰!一切顺利,包括 npm!
@Jinzhao 建议不要安装超过一个 Homebrew、MacPorts 或 Fink。
在当前的 brew 版本中,它声明“如果您更新 npm 本身,请不要使用 npm update 命令。上游推荐的更新 npm 的方法是:npm install -g npm@latest”
如果您的节点版本仍未更新,请按照上述说明运行 npm install -g node
K
Kennedy Nyaga

因为在搜索如何在 mac 上升级 nodejs 时,这似乎是谷歌的首要任务,我将为将来出现的任何人提供我的提示,尽管它已经很老了。

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

sudo npm cache clean -f
sudo npm install -g n
sudo n stable

之后您可以选择确认升级

node -v

您的 nodejs 应该已经升级到最新版本。如果您想升级到特定版本,请说 v0.8.19,而不是

sudo n stable

利用

sudo n 0.8.19

编辑除非需要,否则避免使用 sudo。请参阅评论中史蒂夫的评论


您为什么要对答案投反对票而不添加评论来解释原因?
因为您建议使用 sudo。
这可行,但是:真的有必要在 cache clean 上使用 --force 标志吗?前两个命令我不需要 sudo
感谢@SteveBennett 添加了这一点,我添加了 sudo 是为了包括需要它的新手,而不是让他们陷入困境。此外,在这两种情况下都可以使用 sudo。
有时在不需要时使用 sudo 实际上会造成混乱,因为您最终会得到 root 拥有的文件,而没有 sudo 就无法修改这些文件。
S
Spoeken

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


你知道如何在 OS/X 中安装 jode.js 更新吗?
很抱歉造成混乱(匆匆写下)。我直接从站点的下载链接安装了 node.js,当前版本:v0.8.14。当说 v0.8.15 发布时,我是否需要重新下载它,它会自动更新,它会打电话回家通知我吗?以自制软件为例,我正在进行 brew 升级(所以这取决于我)
我不认为它会打电话回家。我认为您必须定期检查并从他们的网页下载新版本。但我不是 100% 的。
可能是这里最简单的方法。
这适用于 intel Mac 。有人用 M1 Mac 试过吗?
f
fijiaaron

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

curl https://raw.github.com/creationix/nvm/master/install.sh | sh
source ~/.nvm/nvm.sh

然后运行:

nvm install 0.8.22  #(or whatever version of Node.js you want)

你可以看到你安装了哪些版本:

nvm list

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

nvm use 0.8.22

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


我现在正在使用这种方法。在我看来,这是让多个版本在同一台机器上运行的最佳方式。
如果您将 zch 设置为您的默认 shell,那将不起作用。尝试更新 .bash_profile 文件时,安装 nvm 会出错。您将需要手动安装 github.com/lukechilds/zsh-nvm 或编辑 zch bash 配置文件。
S
Shaikh Shahid

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

npm install -g n

然后

n latest

或者

n stable

LTS 版本 n lts
C
Community

只需转到 node JS 网站并安装最新版本。

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

可在此处找到 Node JS

还要更新 npm,您必须使用此命令。

sudo npm i -g npm@latest

您的所有项目都会正常工作。

更新:2020 另一个不错的选择是使用 nvm 作为节点,然后可以支持多个版本。使用 nvm install --lts 始终能够更新到最新的节点版本 使用 nvm ls-remote 命令检查节点的新版本。

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


M
Mostafiz Rahman

在不安装任何包的情况下升级 node 的版本,甚至不安装 nvm 本身:

sudo npx n stable

解释
这种方法类似于Johan Dettmar的回答。唯一的区别是这里的包 n 没有安装在本地机器上。


快速、干净、漂亮!
干净而美丽。应该是可以接受的答案。
N
Nick Woodhams

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

brew install node
npm install -g npm@latest

https://i.stack.imgur.com/F1I9N.png


它将安装真正最新的版本,而不仅仅是最新的酿造版本。
R
Rohit Kale

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

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

J
Jannomeister

可悲的是,n 对我不起作用。我使用 node version manager or nvm,它就像一个魅力。这是有关如何安装 nvm 的链接:https://github.com/creationix/nvm#installation

nvm i 8.11.2 升级到最新的 LTS

nvm 使用 8.11.2 使用它

node -v 检查你的最新版本


这是对我有用的。我尝试了几个热门评论,但按照步骤操作后,node 仍然停留在 v6。谢谢!
这对我有用。谢谢jannomeister。请为接受的答案投票
i
iSkore

访问网站 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 中。

现在升级完成


m
mikaelfs

在 Mac 上更新 Node.js 有五种不同的方法(并且还在计数?):

通过从 nodejs.org 下载安装较新的二进制文件 通过 Homebrew 命令更新 Node.js:brew update && brew upgrade node 使用节点版本管理器 (NVM) 更新 Node.js 命令:nvm install {version} && nvm use {version} 更新节点.js 使用 n 包管理器 命令:sudo n latest 通过 MacPorts 命令更新 Node.js(相同版本更新):sudo port selfupdate && sudo port upgrade {version}

如果您仍在使用旧的 MacOS 版本,最好使用轻量级的专用包管理器,例如 nnvm。您可以参考此 sample use case 在旧 Mac (High Sierra) 上更新 Node.js。


I
Igor Escobar

你可以跑,但你不能隐藏......最后你将使用 NVM 反正。


或者'n'包...如果您想要一个可以通过 npm 安装的简单包管理器,请参阅 Kenny West 的回答。
B
BRogers

你可以去 nodejs.org 下载最新的包。它将为您适当更新。 NPM 也将更新。


到目前为止最简单的,如果你最初是通过网站安装的。
u
user4810973

我认为使用最新版本的 Node.js 最简单的方法是在网站 https://nodejs.org/en/download/current/ 中获取最新的 Node.js pkg 文件,如果您想使用不同版本的 Node.js,您可以使用 nvm 或 n 来管理它.


S
Saviah Kao

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

使用 npm

sudo npm cache clean -f

sudo npm install -g n

sudo n stable

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

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

以下方法对我有用:

第 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

https://i.stack.imgur.com/HRGjQ.png

第 2 步:要下载、编译和安装最新版本的节点,请输入:

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

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

https://i.stack.imgur.com/xmrUF.png

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

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

https://i.stack.imgur.com/DiIQ9.png


我发现这种方法现在对我不起作用。以下是我的做法:npm install -g n sudo n 10.11.0(在我的情况下,我只想更新到 10.11.0)然后它更新到 10.11.0 node -v
l
lmiguelvargasf
sudo npm install -g n

接着

sudo n latest for linux/mac users

对于 Windows,请重新安装节点。


R
Rubin bhandari

Nvm Nvm 是一个基于脚本的节点版本管理器。如文档中所述,您可以使用 curl 和 bash 单线轻松安装它。它也可以在 Homebrew 上找到。

假设您已成功安装 nvm。以下将安装最新版本的节点。

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

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

NN 是一个基于 npm 的节点版本管理器。您可以通过先安装某个版本的节点然后运行 npm install -g n 来安装它。

假设您已成功安装 n。以下将安装最新版本的节点。

sudo n latest

Homebrew Homebrew 是两个流行的 Mac 包管理器之一。假设您之前使用 brew install 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

brew upgrade node 轻而易举
这就是在 OSX 上对我有用的东西。我可能安装了 NVM,因为即使在与 n latest 等相关的命令之后,node -v 仍然给我 6.11.1。酿造升级一工作。谢谢。
Macports 没有为我找到“nodejs-devel”包。我不得不卸载旧版本并安装新版本。
D
Deke

对于最新版本:nvm install node

具体版本:nvm install 6.14.4

https://github.com/creationix/nvm


N
Narendranath Reddy

简单和安全的步骤

第 1 步:安装 NVM

brew install nvm

第 2 步:为 NVM 创建目录

mkdir ~/.nvm/

第 3 步:配置环境变量

nano ~/.bash_profile

粘贴以下代码

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

source ~/.bash_profile

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

nvm ls

第 5 步:安装节点

nvm install 9.x.x

第六步:升级

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/


M
Mario Inostroza

现在这对我有用:

sudo npm install -gn sudo n 最新

快乐的代码!


r
radhey shyam

根据项目要求使用 nvm 升级节点..

通过 homebrew 安装 nvm.. brew update brew install nvm mkdir ~/.nvm nano ~/.bash_profile

在您的 .bash_profile 文件中(根据您的 shell,您可能正在使用其他文件),添加以下内容:

导出 NVM_DIR=~/.nvm 源 $(brew --prefix nvm)/nvm.sh

源 ~/.bash_profile echo $NVM_DIR


u
user846316

您可以直接使用 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


M
Maheshvirus

很简单。

  sudo npm i -g n

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

sudo n 12.8.0 

干杯!!


f
fypnlp

我有同样的问题。这对我有用,因为我从 node.js 网站全局下载并安装了 node.js。

我所做的是尝试 NVM(节点版本管理器)。请在终端中按以下顺序执行命令

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash 命令 -v nvm nvm install node node -v (确认更新)


r
rogopag

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

我发现此 good article 解释了如何完全删除 Node,无论您最初安装它的方式。

node, npmn 从我的机器上完全删除后,我只是使用官方重新安装了 Node.js来自 Node website.pckg 安装程序,一切都恢复正常。

希望这可以帮助某人。


F
Fotios Tsakiris

首先使用以下命令安装 nvm

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

归功于@Saviah Kao

然后安装节点:

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

归功于 @Elad


K
K.tin

一种简单的方法是直接访问网站 https://nodejs.org/en/download/ 点击下载最新版本并安装 pkg 文件。之后,您将获得最新的节点和 npm 版本


S
Shyam

只需一行代码,我就能在大约 20 秒内完成更新

sudo n latest

其他命令对我不起作用,但这个有效。希望它可以帮助某人。