我尝试了this:
sudo npm cache clean -f
sudo npm install -g n
sudo n stable
......但它没有用。
如何在Windows上执行此操作?
答案 0 :(得分:1669)
这是upgrade npm on Windows的新方式。
以管理员身份运行PowerShell
Set-ExecutionPolicy Unrestricted -Scope CurrentUser -Force
npm install -g npm-windows-upgrade
npm-windows-upgrade
注意:不要运行npm i -g npm
。而是使用npm-windows-upgrade
来更新npm。此外,如果您运行NodeJS安装程序,它将替换节点版本。
npm-windows-upgrade -p -v latest
更新到最新版本。答案 1 :(得分:560)
Download并运行最新的MSI。 MSI将更新您安装的节点和npm。
答案 2 :(得分:111)
要更新NPM,这对我有用:
C:\Program Files (x86)\nodejs
npm install npm
(无-g
选项)答案 3 :(得分:63)
和某些人一样,我需要来组合多个答案,我还需要设置代理。
此应适用于所有人。我没有运行EXE文件或MSI文件的愿望..卸载/重新安装,或手动删除文件和文件夹。那是1999年:P
运行此命令以更新NPM:
以管理员
运行PowerShellnpm i -g npm // This works
我不认为此代码实际升级了您的npm版本
Set-ExecutionPolicy Unrestricted -Scope CurrentUser -Force
npm install -g npm-windows-upgrade
npm-windows-upgrade
(courtesy of "Robert" answer)
运行此命令以更新Node.js:
wget https://nodejs.org/download/release/latest/win-x64/node.exe -OutFile 'C:\Program Files (x86)\nodejs\node.exe' (courtesy of BrunoLM answer)
如果你得到'wget:找不到路径的一部分......“**,请看下面的...向下滚动。阅读Web响应...它至少要穿过防火墙/代理(如果你有一个或已经运行过代码通过......
<强> 否则 强>
您可能需要设置代理
npm config set proxy "http://proxy.yourcorp.com:811" (yes, use quotes)
2个可能的错误
无法找到路径解决方案的路径“where.exe节点”(由Lonnie Best Answer提供)
E.g。如果Node.js不存在于“Program Files(x86)”中,可能与where.exe一起存在,它存在于'C:\ Program Files \ nodejs \ node.exe'中。
wget https://nodejs.org/download/release/latest/win-x64/node.exe -OutFile 'C:\Program Files\nodejs\node.exe'
现在也许它会尝试升级但你得到另一个错误,“另一个进程正在使用”node.exe“。
npm -v(3.10.8)
node -v(v6.6.0)
完成。我正处于我想要的版本。
答案 4 :(得分:53)
您可以使用Chocolatey这是Windows的软件包管理器(例如Debian Linux的apt-get)。
安装新的(您可能需要卸载以前安装的版本)
> choco install nodejs
更新到最新版本
> choco update nodejs
和npm
> choco update npm
答案 5 :(得分:42)
您可以使用以下命令将npm更新为最新的稳定版本:
npm install npm@latest -g
使用PowerShell运行它。此命令不需要Windows管理员权限,您可以使用npm -v
答案 6 :(得分:23)
以前的答案可以安装新版本的Node.js(可能是最好的选项),但是如果你依赖于特定的Node.js版本,那么以下内容将起作用:“npm install npm -g”。通过在命令之前和之后运行npm -v来验证。
答案 7 :(得分:21)
这适用于我在Windows 7 x64上更新npm:
以管理员身份运行
$ npm -g install npm
删除C:\Program Files\nodejs\npm.cmd
新的npm将在C:\Users\username\appdata\roaming\npm\npm.cmd
希望这有帮助。
答案 8 :(得分:16)
以管理员身份打开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
并使用
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
答案 9 :(得分:13)
<强> 1。安装最新的npm版本
npm install –g npm@latest
(您可以输入“npm -version”来检查)
的 2。安装节点
a。通过以下网址安装节点新版本:https://nodejs.org/en/download/current/
遵循默认选择
b。删除C:\ Users \\ AppData \ Roaming \ NPM
c。删除C:\ Users \\ AppData \ Roaming \ npm-cache
的任选地:强>
d。(删除当前项目文件夹中的node_modules文件夹)
e。 npm缓存验证
f。 npm install
答案 10 :(得分:12)
答案 11 :(得分:9)
卸载Node.js.单击“开始”菜单,键入“更改或删除程序”,单击显示的项目,在列表中找到Node.js并将其卸载。
删除C:\Program Files (x86)\nodejs\
和C:\Program Files\nodejs\
目录(如果存在)。
卸载/删除/安装似乎没必要,但它经常是,这将节省您的时间。 这些说明来自Microsoft。
<强> django forms and accessing attributes in this link 强>
这是在Windows上升级npm的官方文档。
所有测试均在Windows 10(2017)上进行测试和使用。
答案 12 :(得分:8)
为了它的价值,我必须结合几个答案......
C:\Program Files (x86)\nodejs\
和C:\Program Files\nodejs\
目录(如果存在)。答案 13 :(得分:5)
对我来说,在完全卸载节点之后。 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版本,命令“node -v”也会继续返回10.29。
我通过删除此文件解决了这个问题:
C:\Windows\node.exe
答案 14 :(得分:5)
这是维护NODE.Js i NVM版本的最佳工具
用于Windows的节点版本管理器(nvm) 但对于Windows,使用安装程序。 Download Now!这一直是节点版本管理器,而不是io.js管理器,因此io.js没有后备支持。但是,支持节点4+。
答案 15 :(得分:4)
我也面临着类似的问题。我按照下面提到的步骤,它对我有用:
转到Add()
Windows > Start > Node.js
Node.js command prompt
Run as administrator
ping registry.npmjs.org
npm view npm version
cd %ProgramFiles%\nodejs
和npm已成功更新。早些时候我正在尝试CMD,这就是抛出错误。可能是一些通过运行NodeJs命令提示符解决的路径问题。希望它对你有用。试试这个。
答案 16 :(得分:4)
这对我来说很好用
将命令提示符作为管理员
运行
运行 Powershell -ExecutionPolicy Unrestricted
运行 npm-windows-upgrade
运行 npm --version
答案 17 :(得分:4)
我关注了@ josh3737并从node.js主页安装了最新的MSI。
但是我还有另外一个问题,那就是命令行上仍然有旧节点和npm。问题是由新安装引起的,它已安装到
中C:\Program Files (x86)\nodejs\
而不是
中的先前安装C:\Program Files\nodejs\
新安装在旧路径变量之后将新目录添加到路径变量中。因此,旧安装仍然是路径中的活动安装。从系统路径中删除C:\Program Files\nodejs\
并从用户路径中删除C:\Users\...\AppData\Roaming\npm
并重新启动命令行后,新安装处于活动状态。
也许最小的路径是与新安装无关的本地问题,我有两个指向AppData\Roaming\npm
的链接。也许这也可以通过首先卸载node.js并在之后安装新版本来解决。
答案 18 :(得分:4)
到目前为止,我发现更新Node.js的最简单方法是使用Chocolatey。 使用Chocolatey在Windows上安装或更新最新版本的Node.js:
第1步:首先,确保您已经安装了Chocolatey。如果没有,使用管理shell通过cmd.exe或PowerShell.exe安装chocolatey 。有关详细信息,请访问:https://chocolatey.org/docs/installation
第2步:使用cmd.exe安装 。运行以下命令:
@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"
要使用PowerShell.exe安装 ,请访问:https://chocolatey.org/docs/installation
步骤3 :在cmd.exe上使用以下命令安装或更新(在管理模式下)
安装Node.js :cinst nodejs.install
更新Node.js :cup nodejs.install
答案 19 :(得分:4)
要安装更新,只需从Nodejs.org站点download the installer再次运行即可。新版本的Node.js和NPM将取代旧版本。
答案 20 :(得分:3)
答案 21 :(得分:3)
好的伙计们,我读过(在Windows上尝试过)所有以前的东西,所有这些答案都有各自的缺点。
有关更新Node.js的最佳方式(至少对我而言),请转到 https://nodejs.org/en/ 然后下载最新版本并将其安装在您安装上一版本的同一文件夹中 - 1分钟即可完成。您不需要删除任何旧文件。
然后在cmd:npm install --save latest-version
答案 22 :(得分:2)
Powershell不会直接执行npm,我建议使用
.\npm install -g npm-windows-upgrade
.\npm-windows-upgrade
它失败了:
您想要安装npm 6.1.0,但安装的版本是3.10.10。
一个常见的原因是尝试“npm install npm”或“npm upgrade npm”。截至今天,唯一的解决方案是完全卸载然后重新安装Node.js.有关小教程,请参阅http://aka.ms/fix-npm-upgrade。
请考虑将您的问题报告给http://aka.ms/npm-issues。
http://aka.ms/fix-npm-upgrade&lt; - 这是一个死链接
答案 23 :(得分:2)
对窗口10或窗口8执行以下步骤
npm i -g npm@next
npm i -g npm@next
或npm i -g node@{version}
C:\Program Files\nodejs
。 refreshenv
现在您将拥有已安装的新版本。
注意:如果您不删除路径。您将看到以前版本的节点。
答案 24 :(得分:1)
就我而言,我发现我安装了两个Node.js副本。一个在&#34; C:\ Program Files \ nodejs&#34;另一个是&#34; C:\ Program Files(x86)\ nodejs&#34;。
答案 25 :(得分:1)
您可以使用以下命令:
npm cache clean
npm update -g [package....]
如果要从以前版本的节点升级,则需要更新所有现有的全局程序包。 您还可以指定要更新的包名称。
答案 26 :(得分:1)
这可能对某人有所帮助。 “npm-windows-upgrade”和安装程序都没有为我做过。 Powershell仍在使用旧版本的节点和npm。
所以这就是我所做的(为我工作): 1.从nodejs.org下载最新的安装程序。安装节点。它会更新你的节点;到处都是(Powershell,cmd等)。 2.安装npm-windows-upgrade软件包(npm install -g npm-windows-upgrade)并运行npm-windows-upgrade。
我没有卸载任何东西,也没有设置任何路径。
答案 27 :(得分:0)
答案 28 :(得分:0)
这对我有用。
npm install npm
npm -v
。现在你将获得npm的更新版本。注意:我尝试在“C:\ Program Files \ nodejs \ node_modules”中直接安装npm,但是它创建了错误。