我试了一下:

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

...但这并没有起作用。

如何在Windows上做到这一点?


当前回答

PowerShell不直接执行npm,所以我建议使用

.\npm install -g npm-windows-upgrade
.\npm-windows-upgrade

但它失败了:

你想安装npm 6.1.0,但已经安装的版本是3.10.10。

一个常见的原因是尝试“npm安装npm”或“npm升级npm”。到目前为止,唯一的解决方案是完全卸载Node.js,然后重新安装。有关一个小教程,请参见http://aka.ms/fix-npm-upgrade(死链接)。

请考虑向npm-windows-upgrade报告您的问题。

其他回答

PowerShell不直接执行npm,所以我建议使用

.\npm install -g npm-windows-upgrade
.\npm-windows-upgrade

但它失败了:

你想安装npm 6.1.0,但已经安装的版本是3.10.10。

一个常见的原因是尝试“npm安装npm”或“npm升级npm”。到目前为止,唯一的解决方案是完全卸载Node.js,然后重新安装。有关一个小教程,请参见http://aka.ms/fix-npm-upgrade(死链接)。

请考虑向npm-windows-upgrade报告您的问题。

前面的答案适用于安装一个新版本的Node.js(可能是最好的选择),但如果你依赖于特定的Node.js版本,那么下面的答案也适用:"npm install npm -g"。在命令前后运行npm -v进行验证。

这对我来说很好

以管理员身份运行命令提示符 导航到包含nodejs的文件夹(例如。C:\Program Files\ nodejs) 执行Powershell -ExecutionPolicy Unrestricted命令 运行npm-windows-upgrade 这将显示可供安装的版本列表。只需通过移动上/下键选择您想要的版本并按Enter。 这会更新你的npm 检查npm的当前版本 运行npm——version

命令提示符截图

你可以用下面的命令更新你的npm到最新的稳定版本:

 npm install npm@latest -g

使用PowerShell来运行它。这个命令不需要windows管理员权限,你可以用npm -v来验证结果

对我来说,在完全卸载节点10.29,然后安装节点4.2.2之后,在我的c:\windows文件夹中仍然保留了一个10.29 node.exe文件。

我通过使用以下命令发现了这一点:

where.exe node

命令返回:

C:\Windows\node.exe
C:\Program Files\nodejs\node.exe

因此,即使我已经通过msi可执行文件成功安装了4.2.2版本,命令节点-v仍然会报告我正在运行10.29版本。

我通过删除这个文件解决了这个问题:

C:\Windows\node.exe

此后,node -v将报告升级后的版本,而不是之前版本中不需要的残余版本。