我已使用 .msi 安装程序下载并安装了新版本的 nodejs (4.1.2)。之后我跑了node -v
,但它仍然显示旧版本(0.12.2)。我尝试重新启动Windows,甚至卸载nodejs并重新安装它,但仍然显示相同的内容。为什么会发生这种情况?我该如何解决?
在常用安装路径中运行搜索 node.exe 的多个副本:
-
程序文件
Get-ChildItem -File -path $env:PROGRAMFILES -include node.exe -recurse -force
-
程序文件(x86)
Get-ChildItem -File -path $env:PROGRAMFILESX86 -include node.exe -recurse -force
-
共同文件
Get-ChildItem -File -path $env:COMMONPROGRAMFILES -include node.exe -recurse -force
-
Roaming
Get-ChildItem -File -path $env:APPDATA -include node.exe -recurse -force
升级 npm 有其自身的问题:
很可能您之前尝试升级 npm,但不知何故失败了,然后您开始寻找这个工具。如果该工具升级失败,可能是由于在升级过程中进行了部分更改而导致的问题npm install npm
or npm upgrade npm
。在这种情况下,您将必须完全卸载 Node:
卸载 Node.js(选择“卸载”,而不是“修复”选项)。
Go into %programfiles%\nodejs
并删除整个文件夹。
Delete %appdata%\npm
and %appdata%\npm-cache
.
编辑您的 PATH 并删除引用 npm 的所有内容(为此,请点击“开始”并搜索“环境变量”)。
重新安装 Node,然后安装这个工具 https://github.com/felixrieseberg/npm-windows-upgrade- 并且仅使用这个工具 https://github.com/felixrieseberg/npm-windows-upgrade要升级 npm,请勿尝试运行npm install npm
.
参考
-
npmjs 文档:前缀配置 https://docs.npmjs.com/files/folders#prefix-Configuration
-
文件系统的 Get-ChildItem https://technet.microsoft.com/en-us/library/hh847897.aspx
-
使用 PowerShell 在 PATH 中查找文件 https://blogs.msdn.microsoft.com/stuartleeks/2015/07/02/finding-files-in-the-path-with-powershell/
-
微软 NodeJS 指南 https://github.com/microsoft/nodejs-guidelines
-
Environment.SpecialFolder 枚举(系统) https://msdn.microsoft.com/en-us/library/system.environment.specialfolder(v=vs.110).aspx
-
常见文件夹变量 - Windows Defender 安全智能 https://www.microsoft.com/en-us/wdsi/help/folder-variables
-
已知文件夹ID (Windows) https://msdn.microsoft.com/en-us/library/windows/desktop/dd378457(v=vs.85).aspx
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)