我试了一下:
sudo npm cache clean -f
sudo npm install -g n
sudo n stable
...但这并没有起作用。
如何在Windows上做到这一点?
我试了一下:
sudo npm cache clean -f
sudo npm install -g n
sudo n stable
...但这并没有起作用。
如何在Windows上做到这一点?
当前回答
注意:这个问题是专门问如何升级npm,而不是Node.js。如果你想在windows下通过命令行更新Node.js,我建议运行winget upgrade -q NodeJS或使用chocolatey。
我应该选择什么方法来更新NPM?
Node.js v16或更高版本? 安装NPM Node.js v14或以下? 考虑更新到Node.js的最新LTS版本 npm-windows-upgrade
使用npm-windows-upgrade进行升级
以管理员身份运行PowerShell
Set-ExecutionPolicy Unrestricted -Scope CurrentUser -Force
npm install -g npm-windows-upgrade
npm-windows-upgrade
注意:如果你运行Node.js安装程序,它会替换Node.js版本。
在Node.js安装npm的地方升级npm。 不修改默认路径。 不更改默认的全局包位置。 允许轻松升级和降级,并安装特定的版本。 NPM和Node.js之间匹配的版本列表(https://nodejs.org/en/download/releases/) -但你需要下载Node.js安装程序并运行它来更新Node.js (https://nodejs.org/en/)
使用npm升级
npm install -g npm
注意:一些用户仍然报告用npm更新npm的问题,但我没有v16+的经验。
其他回答
以管理员身份打开PowerShell。
要安装第一次,您可以使用这个小脚本下载最新的msi并运行它
$nodeLatest=((curl https://nodejs.org/download/release/latest/).Content | findstr x64.msi) -replace "<(.*?)>", "" -replace "\s+.+", "";
wget "https://nodejs.org/download/release/latest/$nodeLatest" -OutFile (join-path $env:TEMP node.msi); Start-Process (join-path $env:TEMP node.msi)
在未来的升级中,你可以下载node.exe并更新npm
wget https://nodejs.org/download/release/latest/win-x64/node.exe -OutFile 'C:\Program Files\nodejs\node.exe'
npm i -g npm
现在你应该有了最新的节点和npm。
我更进一步,决定为Windows实现一个nvm。
https://github.com/brunolm/nvm
Install-Module -Name power-nvm
nvm install latest
nvm default latest
你可以使用Chocolatey,它是windows的包管理器(就像Debian Linux的apt-get)。
重新安装(您可能需要卸载以前安装的版本)
> choco install nodejs
更新到最新版本
> choco update nodejs
对于NPM
> choco update npm
如何更新Node.js:
卸载node . js。点击开始菜单,输入“更改或删除程序”,点击显示的项目,在列表中找到Node.js并卸载它。 删除目录C:\Program Files (x86)\nodejs\和C:\Program Files\nodejs\(如果存在)。 安装最新的https://nodejs.org/en/download
卸载/删除/安装似乎是不必要的,但通常是这样的,这将节省您的时间。 这些指令来自微软。
如何更新NPM:
https://www.npmjs.com/package/npm-windows-upgrade
这是在windows上升级npm的官方文档。
所有这些都在Windows 10(2017)上进行了测试和工作。
对我来说,在完全卸载节点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将报告升级后的版本,而不是之前版本中不需要的残余版本。
这对我来说在Windows 7 x64上更新npm很有效:
启动Windows 所有程序 node . js Node.js命令提示符(可选择单击) 以管理员身份运行 安装NPM 删除C:\Program Files\nodejs\npm.新的npm将在C:\Users\username\appdata\roaming\npm\npm.cmd
希望这能有所帮助。