913

所以,我已经安装了 Node.js,现在当我尝试安装 Mongoosejs 时,我收到一条错误消息,告诉我我没有所需的 Node.js 版本(我有 v0.4.11 并且需要 v0.4.12)。

如何升级到这个版本?我想我可以用最新版本再次安装它,但在我确定文件夹“节点”中的项目文件夹不会被删除之前,我不想这样做。

4

35 回答 35

1521

Ubuntu Linux/Mac:

该模块n使版本管理变得容易:

npm install n -g

对于最新的稳定版本:

n stable

对于最新版本:

n latest

视窗:

只需从节点网站的 Windows 中的 .msi 重新安装节点。

于 2012-04-09T16:06:14.213 回答
677

所有平台(Mac、Linux 和 Windows)2022

如果您只需要将旧版本的 Node.js 升级到最新版本并且不需要多个版本,只需用新版本覆盖现有的可执行文件即可。

从nodejs.org/en/download下载最新的 Node.js

在此处输入图像描述

行得通!TM在所有平台上,是最简单/最快的方法。
当您node -v在终端中运行时,您将看到最新版本。

苹果电脑

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

brew upgrade node

管理多个版本的 Node.js:

如果您需要在您的机器上运行多个版本的 Node.js,例如,如果您有一个针对 AWS Lambda 上特定版本的旧项目,那么NVM(Node Version Manger) 是您的朋友!

第 1 步 -获取NVM

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

如果您对安装命令感到好奇请阅读源代码
……它已经过几位node.js 安全专家的审查

第 2 步 -安装您需要的 node.js 版本

获得NVM后,您可以使用 nvm 命令安装特定版本的 Node.js:

nvm install v16.13.2

注意:您可能需要关闭并重新打开终端窗口才能nvm使用命令。

您应该期望在终端中看到类似这样的内容:

Now using node v16.13.2

您现在在您的机器上拥有最新的 Node.js。
如果您需要临时切换到不同/以前的版本,您可以使用简单的nvm命令来完成。

注意:避免sudo与 Node/NPM 一起使用,因为它违反了最小权限的安全原则

NVM被认为比管理多个 Node.js 版本“更好”,因为详细的命令意味着容易跟踪您在终端/SSH 日志中所做的事情。它被NPM的团队使用,他们是 Node.js 世界的创建者/保管人!N

于 2012-09-24T18:44:27.940 回答
110

通过 npm:

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

您还可以指定所需的版本:

n 0.8.21

如果它似乎不起作用,安装会给你一个提示:

如果“node --version”显示旧版本,则启动一个新的 shell,或使用以下命令重置位置哈希:( hash -r 对于 bash、zsh、ash、dash 和 ksh)[或] rehash (对于 csh 和 tcsh)

参考

于 2013-07-18T13:24:40.847 回答
63

在 Windows 上,从https://nodejs.org/download/release/latest/下载最新的“Windows Installer (.msi)” 并安装相同的目录,仅此而已...

完成上述安装后,NodeJS 和 NPM 将升级到最新版本,然后您可以正常清理包:

npm cache clean
npm update -g

笔记

您始终可以使用以下命令检查版本:

C:\node -v
v0.12.4

C:\npm -version
2.10.1
于 2014-10-31T02:26:44.117 回答
55

所有平台(Windows、Mac 和 Linux)

2021 年 5 月更新

就是这样的人。它过去更加复杂,人们使用不同类型的包和策略来管理它。但事情已经变得更好了。

只需转到nodejs.org并使用最新的安装程序。

于 2017-03-17T20:14:30.667 回答
23

在 Windows 上将 node.js 升级到最新版本

  1. 如果您还没有安装 Chocolatey: 安装 Chocolatey

  2. 在命令提示符下,键入

    cup nodejs

(相当于打字choco upgrade nodejs——假设你已经安装了节点)

注意:您可能需要运行cinst nodejs.installChocolatey 来注册您现有的安装。(感谢您的评论,@mikecheel)


在 Windows 上安装 node.js

如果您从未安装过节点,您也可以使用 Chocolatey 来安装。安装巧克力(参见上面的步骤 1)。然后从命令提示符处键入:

cinst nodejs.install

Chocolatey Gallery 节点 JS(安装)


使用巧克力在 Windows 上安装特定版本的节点

cinst nodejs.install -Version 0.10.26

于 2014-09-01T02:48:20.447 回答
23

在将 Node.js 升级到最新版本之后

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

sudo ln -sf /usr/local/n/versions/node/<VERSION>/bin/node /usr/bin/node

用于将 Node.js 升级到最新版本

sudo n latest

如果您需要撤消,请按照命令

sudo apt-get install --reinstall nodejs-legacy     # fix /usr/bin/node
sudo n rm 6.0.0     # replace number with version of Node that was installed
sudo npm uninstall -g n

这种升级节点的方法现在不稳定,不应该使用。管理 Node.js 版本的最好方法是使用 NVM:Node Version Management。!

安装

您可以在 nvm [GitHub 页面][1] 上阅读安装步骤。安装和配置只有两个简单的步骤。使用非虚拟机

如果您使用许多不同的 Node.js 实用程序,您就会知道有时您需要快速切换到其他版本的 Node.js,而无需占用整个机器。您可以在此处使用 nvm 下载、安装和使用不同版本的 Node.js:

nvm install 4.0

在任何给定时间,您都可以使用以下命令切换到另一个:

nvm use 0.12
于 2017-03-09T08:50:20.380 回答
15

对于 Mac OSX 上的 brew 用户

brew upgrade node

产生:

Andrews-MacBook-Air :: ~/dev/cookiecutter-ionic ‹master*› » brew upgrade node
==> Upgrading 1 outdated package, with result:
node 0.12.7
==> Upgrading node
==> Downloading https://homebrew.bintray.com/bottles/node-0.12.7.yosemite.bottle
######################################################################## 100.0%
==> Pouring node-0.12.7.yosemite.bottle.tar.gz
==> Caveats
Bash completion has been installed to:
  /usr/local/etc/bash_completion.d
==> Summary
  /usr/local/Cellar/node/0.12.7: 2726 files, 31M
于 2015-08-13T01:07:00.570 回答
13

安装 npm =>

sudo apt-get install npm

安装 n =>

sudo npm install n -g

最新版本的节点=>

sudo n latest 

因此将下载并安装最新版本

您可以使用特定版本的节点

列出可用的节点版本=>

n ls

安装特定版本=>

sudo n 4.5.0
于 2017-05-26T11:24:12.347 回答
10

我在 Ubuntu 中有节点版本v7.10.0

使用以下命令进行升级

curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs

现在升级到v8.2.1

或者

sudo apt-get install make
sudo curl -L https://git.io/n-install | bash
. /home/$USER/.bashrc

# Below command should get the latest version of node
node --version

# Install specific version of node
n 8.2

# Check for the Node Version installed
node --version
于 2017-07-26T18:35:20.063 回答
9

sudo npm install n -g sudo n 0.12.2

或者

sudo npm install -g n sudo n latest

或者

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

这些运作良好。但是对于UX term终端node -v没有显示最新版本,所以我关闭并重新打开了新终端。我发现,安装后的v10.1.0输出node-vsudo n latest

于 2018-05-13T13:32:10.847 回答
7

在 Mac OSX 上使用 brew 和 nvm:

如果您不使用 nvm,请先卸载 nodejs。如果尚未安装,请安装 Homebrew。然后安装 nvm 和节点:

brew install nvm
nvm ls-remote    # find the version you want
nvm install v7.10.0
nvm alias default v7.10.0    # set default node version on a shell

您现在可以在需要时轻松切换节点版本。

奖励:如果您在使用 nvm 时看到“tar:无效选项”错误,请brew install gnu-tar按照 brew 提供的说明设置 PATH。

于 2017-05-18T22:47:33.517 回答
6

我的2c:

我在 Linux Ubuntu 12.04 LTS 上尝试了 n 和 nvm,以便将节点从 v0.8.25 更新到 v0.10.22。

第一个已成功完成,但命令“哪个节点”导致旧的 v0.8.25。
第二个已成功完成,相同的命令导致 v.0.10.22。

于 2013-11-19T09:08:30.923 回答
6
brew upgrade node

将升级到最新版本的节点

于 2016-06-19T05:34:32.050 回答
5

如果您使用的是 Linux .. 只需执行以下步骤sudo -i sudo apt install curl curl -sL https://deb.nodesource.com/setup_10.x | sudo bash - sudo apt-get install -y nodejs ,您现在应该拥有最新版本

于 2019-04-15T09:57:46.010 回答
4

您无需担心升级过程

您可以使用官方文档安装最新版本,就好像您没有安装它一样,它会像魅力一样工作。> https://nodejs.org/en/download/package-manager/ ;)

于 2016-08-19T11:23:47.037 回答
4

它在 Windows 操作系统中非常简单。

您不必卸载旧节点或 npm 或其他任何东西。

只需访问nodejs.org

然后寻找适用于 Windows 的下载选项并在其下方单击当前...最新功能选项卡并按照自动说明进行操作

它将为您下载最新的节点和 npm 并丢弃旧的节点。

于 2020-09-13T07:45:08.987 回答
3

打开 node.js 项目的 package.json 文件,将依赖项中用 * 指定的版本号替换为最新版本。

于 2016-08-31T19:58:14.547 回答
2

如果你正在寻找 linux ..

npm update 将不起作用,主要是不确定原因,但以下步骤将帮助您解决问题......

将节点 4.x 升级到 6.x 的终端过程。

 $ node -v
 v4.x

检查节点路径

$ which node
/usr/bin/node

从 [下载][1] 下载最新的 (6.x) 节点文件

[1]:https : //nodejs.org/dist/v6.9.2/node-v6.9.2-linux-x64.tar.xz 和解压缩文件保存在 /opt/node-v6.9.2-linux-x64/ 中。

现在取消链接当前节点并链接到最新的如下

$ unlink /usr/bin/node
$ ln -s /opt/node-v6.9.2-linux-x64/bin/node node
$ node -v
$ v6.9.2
于 2016-12-16T15:17:18.937 回答
2

对于 linux 用户如何逐步更新节点版本有很好的解释。PS 类型而不是sudo n stable sudo n latest用于接收最新的节点版本。

如果您收到以下错误

错误:模块版本不匹配。预期48,得到46。

您刚刚通过以下命令重建了 npm,npm rebuild它应该可以解决问题。

于 2017-01-04T13:27:46.873 回答
2

对于 Windows 用户,只需访问 node.js (nodejs.org) 网站并下载最新版本(截至 2017 年 9 月 29 日的 8.6.0)。按照自动安装窗口中的步骤操作,一切顺利。我刚刚做到了,当我在 webstorm 中检查我的最新版本时,它已经在那里了。

于 2017-09-29T17:50:07.543 回答
2

通过从 nodejs 网站下载最新的 .msi 版本重新安装最新版本的 nodejs,https: //nodejs.org/en/download/

它在我的 Windows 机器上为我工作。

于 2017-12-03T07:44:36.890 回答
2

在你的终端上试试这个:

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

它应该可以解决问题。

稍后,运行 node --version 以检查您拥有的版本。

于 2018-04-12T10:48:36.503 回答
1

按照@nelsonic 的描述安装 nvm 后,这是保持升级的最简单方法:

“node”是上一个版本的快捷方式,因此您可以使用以下命令安装上一个版本:

nvm install node

并始终使用“节点”版本:

nvm alias default node

最后升级您的节点版本并保留已安装的软件包:

nvm install node --reinstall-packages-from=node
于 2016-04-28T03:14:49.687 回答
1

我用了 https://chocolatey.org/install

  1. 参考此https://chocolatey.org/install安装 Chocolatey
  2. 在cmd中运行

杯节点js

就这样。NodeJs 现在更新到最新版本

于 2018-10-06T18:08:56.177 回答
0

对于 Windows

我有同样的问题,我尝试重新安装并没有为我工作。

"C:\Program Files(x86)\nodejs"从您的系统环境中删除PATH,就是这样!

于 2016-11-04T18:52:16.640 回答
0

只需将节点和 npm 更新捆绑到我的 ~/.bash_profile 的单个命令中即可:

update-node(){
  sudo n latest;
  sudo npm install -g npm;
  node --version;
}

这假设您已经从 Eldar Djafarov 的回答中安装了“n”。将此保存到您的 Bash 配置文件后,重新打开终端并输入 update-node 并输入您的 sudo 密码:

λ update-node
Password:
/usr/local/bin/npm -> /usr/local/lib/node_modules/npm/bin/npm-cli.js
/usr/local/bin/npx -> /usr/local/lib/node_modules/npm/bin/npx-cli.js
+ npm@5.3.0
updated 1 package in 7.232s
v8.2.1
于 2017-08-09T21:23:13.903 回答
0

只需运行命令行npm install -g npmsudo npm install -g npm为 mac 用户更新它。就是这样。

于 2018-05-28T01:52:38.753 回答
0

视窗 10

在文件夹中打开 CMDC:\Program Files\nodejs\node_modules并键入npm i npm

于 2018-10-10T03:04:52.843 回答
0

对于 Ubuntu

使用以下命令安装nvm (节点版本管理器)

要安装或更新 nvm,可以使用使用 cURL 的安装脚本:

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

或 Wget:

wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | 重击

检查是否已经安装了 nvm

nvm--版本

要安装或更新节点,请运行以下命令:

nvm install 10.14.1(节点一要安装的版本)

要检查系统可用或当前为系统运行的节点版本列表,请运行以下命令:

非虚拟机列表

它将列出系统中存在的所有可用节点版本

检查节点版本:

节点-v

于 2018-12-04T07:36:41.570 回答
0

如果 sudo/root 访问有问题,我们可以这样做

npm install stable Or
npm install 10.15.0
于 2019-04-25T06:52:03.090 回答
0

只需使用 nvm 安装节点 js。它将下载最新版本的节点 js。

运行: curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.37.2/install.sh | 重击

执行命令后。关闭您的终端并重新打开,然后运行此命令以安装 node js 最新版本。

运行:nvm install v14.15.5

现在通过输入 node -v 检查

于 2021-03-11T08:49:45.470 回答
0

我迟到了,但在 Windows 10/11 中,在我的 Azure DevOps 管道中,我在还原阶段从 PowerShell 脚本运行这些命令:

if (!(Test-Path "./$nodeInstaller")) {

    $message = "Downloading node $nodeVersion"
    Write-Output $message

    Invoke-WebRequest "https://nodejs.org/dist/$nodeVersion/$($nodeInstaller)" -OutFile "./$nodeInstaller"
}

# Display node install message
$message = "Installing node $nodeVersion"
Write-Output $message

# Execute MsiExec silently and wait for it to complete.
Start-Process MsiExec.exe -Wait -ArgumentList "/i $($nodeInstaller) /qn /L*v msilog.txt"

就我而言,这对于我的一些构建工具(Angular 13 CLI)是必要的,因为我使用的容器映像只有旧版本的 node.js。这些命令在构建/恢复管道中也很有帮助,因为我们可以等待安装完成并捕获一些日志以防安装失败。

于 2021-12-10T16:45:15.940 回答
-1

如果 Node 安装脚本不适合您(它不适合我),这是在 Debian Jessie 中更新 Node Js 的解决方案,取自 Thomas Ward 在askubuntu.com的回复(谢谢,伙计!)。

1.- 创建一个新文件:/etc/apt/sources.list.d/nodesource.list

您需要使用 sudo 创建此文件,但是当您创建文件时,请将其放入其中:

deb https://deb.nodesource.com/node_9.x jessie main
deb-src https://deb.nodesource.com/node_9.x jessie main

然后,保存文件。(将 node_9.x 替换为所需的版本)

2.- 从 Nodesource 下载存储库的 GPG 签名密钥。否则,您可能会遇到以下NO_PUBKEY错误apt-get update

curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | sudo apt-key add -

3.-手动运行sudo apt-get update

这会刷新来自 nodesource 存储库的数据,因此 apt 知道存在更新的版本。

如果您收到 NO_PUBKEY GPG 错误,则返回第 2 步

4.-检查 apt-cache policy nodejs 输出

这不是由脚本完成的,但您要确保在输出中看到一个类似以下内容的条目:

Version table:
 *** 9.2.0-1nodesource1 0
        500 https://deb.nodesource.com/node_9.x/ jessie/main amd64 Packages
        100 /var/lib/dpkg/status
     0.10.29~dfsg-2 0
        500 http://ftp.debian.org/debian/ jessie/main amd64 Packages

如果您没有看到这样的条目,而只看到 0.10.29,请重新开始。否则,继续。

5.- 安装 nodejs 二进制文件。现在您已经确认 9.x 在您的系统上可用,您可以安装它:sudo apt-get install nodejs

nodejs -v现在应该在输出中显示 v9.2 或类似内容(只要它以 v9 开头。那么您使用的是版本 9)。

于 2017-11-19T07:23:53.477 回答
-3

如果它不起作用,请忘记上述所有答案,如果您安装了 nvm,只需运行以下命令

nvm alias 12.16.0 //add your required node version
于 2020-02-12T07:36:16.403 回答