是否可以就地升级节点,而不是手动安装最新的稳定版本?

我已经用nvm安装了node.js 5.0版本,但现在我想把它更新到5.4。我试图避免手动重新安装我所有的全局包(例如通过运行npm install -g grunt-cli bower yo yoman-angular-generator blabla blablablabla…)


当前回答

以下是升级NodeJs版本的步骤:

运行nvm install node(将安装最新版本)。另外,您 可以通过运行NVM install <node_version>来指定特定的版本。 可执行nvm use <node_version>命令使用。 如果您想让它成为您机器上的默认版本,请运行nvm alias default <node_version>。


其他说明:

使用nvm list命令可以发现您的计算机上有哪些节点版本,以及哪个节点版本被设置为默认版本。

其他回答

Node.JS来安装新版本。

步骤1:NVM安装

-G NVM 中的 NPM

步骤2:NODE最新版本安装

nvm安装*.*.*(nodeversion)

步骤3:选择节点版本

nvm使用*.*.*(NodeVersion)

完成

如果你有4.2并且想要安装5.0.0那么

nvm install v5.0.0 --reinstall-packages-from=4.2

gabrielperales的答案是正确的,只是他错过了结尾的“=”号。如果不使用“=”符号,则将安装新的节点版本,但不会安装包。

来源:sitepoint

对于Windows 11,这适用于我的cmd,使用管理员权限:

前提条件,如果你刚刚安装NVM,是在NVM安装后打开一个新的cmd窗口。

参见安装说明:https://github.com/coreybutler/nvm-windows

获取已安装的版本,使用

nvm list

获取当前版本

nvm current

安装最新版本

nvm install latest

检查已安装的版本以查看更新的版本,再次使用

nvm list

将当前版本设置为最新版本(具有管理员权限的cmd),您在上一步中刚刚安装

nvm use PUT_VERSION_NUMBER_TO_BE_USED

您可以再次检查更改是否成功使用

nvm list

删除旧版本,如果不再需要

nvm remove PUT_VERSION_NUMBER_TO_BE_REMOVED

如果您想使用LTS版本,请安装using

nvm install lts

用于更新当前活动版本的Bash别名:

alias nodeupdate='nvm install $(nvm current | sed -rn "s/v([[:digit:]]+).*/\1/p") --reinstall-packages-from=$(nvm current)'

sed -rn "s/v([[:digit:]]+)。*/\1/p"将输出从NVM current转换,以便只返回node的主版本,即:v13.5.0 -> 13。

您可以更简单地运行以下命令之一:

最新版本:

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

稳定(LTS)版本:(如果当前正在使用)

nvm install "lts/*" --reinstall-packages-from="$(nvm current)"

这将安装适当的版本,并从当前使用的节点版本重新安装所有包。

这样可以避免手动处理特定版本。


赞扬@m4js7er对LTS版本的评论。