所以,我已经安装了 Node.js,现在当我尝试安装 Mongoosejs 时,我收到一条错误消息,告诉我我没有所需的 Node.js 版本(我有 v0.4.11 并且需要 v0.4.12)。
如何升级到这个版本?我想我可以用最新版本再次安装它,但在我确定文件夹“节点”中的项目文件夹不会被删除之前,我不想这样做。
该模块n
使版本管理变得容易:
npm install n -g
对于最新的稳定版本:
n stable
对于最新版本:
n latest
只需从节点网站的 Windows 中的 .msi 重新安装节点。
如果您只需要将旧版本的 Node.js 升级到最新版本并且不需要多个版本,只需用新版本覆盖现有的可执行文件即可。
这行得通!TM在所有平台上,是最简单/最快的方法。
当您node -v
在终端中运行时,您将看到最新版本。
如果您最初使用brew安装了 Node.js,请运行:
brew upgrade node
如果您需要在您的机器上运行多个版本的 Node.js,例如,如果您有一个针对 AWS Lambda 上特定版本的旧项目,那么NVM
(Node Version Manger) 是您的朋友!
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
如果您对安装命令感到好奇,请阅读源代码
……它已经过几位node.js 安全专家的审查
获得NVM后,您可以使用 nvm 命令安装特定版本的 Node.js:
nvm install v16.13.2
注意:您可能需要关闭并重新打开终端窗口才能nvm
使用命令。
您应该期望在终端中看到类似这样的内容:
Now using node v16.13.2
您现在在您的机器上拥有最新的 Node.js。
如果您需要临时切换到不同/以前的版本,您可以使用简单的nvm
命令来完成。
NVM
被认为比管理多个 Node.js 版本“更好”,因为详细的命令意味着更容易跟踪您在终端/SSH 日志中所做的事情。它被NPM的团队使用,他们是 Node.js 世界的创建者/保管人!N
通过 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)
在 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
2021 年 5 月更新
就是这样的人。它过去更加复杂,人们使用不同类型的包和策略来管理它。但事情已经变得更好了。
在 Windows 上将 node.js 升级到最新版本
如果您还没有安装 Chocolatey: 安装 Chocolatey
在命令提示符下,键入
cup nodejs
(相当于打字choco upgrade nodejs
——假设你已经安装了节点)
注意:您可能需要运行cinst nodejs.install
Chocolatey 来注册您现有的安装。(感谢您的评论,@mikecheel)
在 Windows 上安装 node.js
如果您从未安装过节点,您也可以使用 Chocolatey 来安装。安装巧克力(参见上面的步骤 1)。然后从命令提示符处键入:
cinst nodejs.install
使用巧克力在 Windows 上安装特定版本的节点
cinst nodejs.install -Version 0.10.26
在将 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
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
安装 npm =>
sudo apt-get install npm
安装 n =>
sudo npm install n -g
最新版本的节点=>
sudo n latest
因此将下载并安装最新版本
您可以使用特定版本的节点
列出可用的节点版本=>
n ls
安装特定版本=>
sudo n 4.5.0
我在 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
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-v
sudo n latest
在 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。
我的2c:
我在 Linux Ubuntu 12.04 LTS 上尝试了 n 和 nvm,以便将节点从 v0.8.25 更新到 v0.10.22。
第一个已成功完成,但命令“哪个节点”导致旧的 v0.8.25。
第二个已成功完成,相同的命令导致 v.0.10.22。
brew upgrade node
将升级到最新版本的节点
如果您使用的是 Linux .. 只需执行以下步骤sudo -i
sudo apt install curl
curl -sL https://deb.nodesource.com/setup_10.x | sudo bash -
sudo apt-get install -y nodejs
,您现在应该拥有最新版本
您无需担心升级过程。
您可以使用官方文档安装最新版本,就好像您没有安装它一样,它会像魅力一样工作。> https://nodejs.org/en/download/package-manager/ ;)
它在 Windows 操作系统中非常简单。
您不必卸载旧节点或 npm 或其他任何东西。
只需访问nodejs.org
然后寻找适用于 Windows 的下载选项并在其下方单击当前...最新功能选项卡并按照自动说明进行操作
它将为您下载最新的节点和 npm 并丢弃旧的节点。
打开 node.js 项目的 package.json 文件,将依赖项中用 * 指定的版本号替换为最新版本。
如果你正在寻找 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
对于 linux 用户如何逐步更新节点版本有很好的解释。PS 类型而不是sudo n stable
sudo n latest
用于接收最新的节点版本。
如果您收到以下错误
错误:模块版本不匹配。预期48,得到46。
您刚刚通过以下命令重建了 npm,npm rebuild
它应该可以解决问题。
对于 Windows 用户,只需访问 node.js (nodejs.org) 网站并下载最新版本(截至 2017 年 9 月 29 日的 8.6.0)。按照自动安装窗口中的步骤操作,一切顺利。我刚刚做到了,当我在 webstorm 中检查我的最新版本时,它已经在那里了。
通过从 nodejs 网站下载最新的 .msi 版本重新安装最新版本的 nodejs,https: //nodejs.org/en/download/
它在我的 Windows 机器上为我工作。
在你的终端上试试这个:
nvm install node --reinstall-packages-from=node
它应该可以解决问题。
稍后,运行 node --version 以检查您拥有的版本。
按照@nelsonic 的描述安装 nvm 后,这是保持升级的最简单方法:
“node”是上一个版本的快捷方式,因此您可以使用以下命令安装上一个版本:
nvm install node
并始终使用“节点”版本:
nvm alias default node
最后升级您的节点版本并保留已安装的软件包:
nvm install node --reinstall-packages-from=node
我用了 https://chocolatey.org/install
杯节点js
就这样。NodeJs 现在更新到最新版本
对于 Windows
我有同样的问题,我尝试重新安装并没有为我工作。
"C:\Program Files(x86)\nodejs"
从您的系统环境中删除PATH
,就是这样!
只需将节点和 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
只需运行命令行npm install -g npm
或sudo npm install -g npm
为 mac 用户更新它。就是这样。
视窗 10
在文件夹中打开 CMDC:\Program Files\nodejs\node_modules
并键入npm i npm
对于 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
如果 sudo/root 访问有问题,我们可以这样做
npm install stable Or
npm install 10.15.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 检查
我迟到了,但在 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。这些命令在构建/恢复管道中也很有帮助,因为我们可以等待安装完成并捕获一些日志以防安装失败。
如果 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)。
如果它不起作用,请忘记上述所有答案,如果您安装了 nvm,只需运行以下命令
nvm alias 12.16.0 //add your required node version