我刚刚安装了Node.js和NPM(节点包管理器)

我安装了NPM以访问其他Node.js模块。

在我安装Node.js和NPM之后,我注意到这两个版本都不可用。

我想知道:如何将Node.js、NPM和我的Node.js模块升级到最新版本?

我需要卸载Node.js和NPM并重新安装最新版本吗?

这是到目前为止我所做尝试的链接。此链接是npm的一部分。


当前回答

只需以root/administrator身份在终端中运行以下命令:

npm i -g n
n stable
npm update -g npm

它在Linux上对我有效

其他回答

对于nodejs,应该卸载它并从nodejs.org下载您喜欢的版本对于npm,运行命令中的以下行:

npm i npm

Use:

npm update -g npm

请参阅更新命令的文档:

npm更新[-g][<pkg>…]此命令将更新列出的所有软件包至最新版本(由标记config指定),并遵守semver。

此外,请参阅有关Node.js和NPM安装和升级NPM的文档。

以下原始答案来自已不存在的旧FAQ,但适用于Linux和Mac:

如何更新npm?npm安装-g npm请注意,此命令将删除当前版本的npm。确保在Mac上使用sudo npm install-g npm。您还可以通过在没有任何参数的情况下执行npm更新来更新所有过时的本地包,或者通过执行npm update-g来更新全局包。有时,npm的版本会升级,导致当前版本无法与您已经安装的版本一起正确安装。(考虑一下,如果update命令中存在错误。)在这些情况下,您可以执行以下操作:卷曲https://www.npmjs.com/install.sh|sh

要更新Node.js本身,我建议您使用节点版本管理器nvm。

这对我在Windows上仅更新npm(管理模式下的powershell)有效:

npm --version
# 5.6.0
cd "C:\Program Files\nodejs"
rm "npm" 
rm "npx"
mv "npx.cmd" npx.old.cmd
mv "npm.cmd" npm.old.cmd

# This is the important command
./npm.old.cmd install npm

rm *.old.cmd
npm --version
# 6.4.1

这个固定的npm WARN npm npm不支持Node.js v10.12.0,因为chocolate安装了不兼容的Node和npm?

只需使用这个

npm i -g npm

这是当发布新的更新/错误修复时,我在控制台上从npm得到的提示:

这里有一个简单的修复方法,适用于那些通过Homebrew安装节点而不使用npm的用户,以及后来使用官方脚本进行npm升级/安装的用户。此方法假定您已按如下方式运行节点安装:

brew install node --without-npm
echo prefix=~/.npm-packages >> ~/.npmrc
curl -L https://www.npmjs.com/install.sh | sh

如果以上失败,请从这里开始。删除npm(如果有):

rm -rf ~/.npm-packages/lib/node_modules/npm

下载并解压缩最新版本的npm,当前版本为5.6.0:

cd ~
curl -L https://registry.npmjs.org/npm/-/npm-5.6.0.tgz | tar xz

将解压缩的包移动到node_modules文件夹:

mv ~/package ~/.npm-packages/lib/node_modules/npm

确保~/.bash_profile包含以下条目:

export NPM_PACKAGES="$HOME/.npm-packages"
export NODE_PATH="$NPM_PACKAGES/lib/node_modules:$NODE_PATH"
export PATH="$NPM_PACKAGES/bin:$PATH"

源文件:

source ~/.bash_profile

验证安装:

npm -v