我使用.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
漫游
Get-ChildItem -File -path $env:APPDATA -include node.exe -recurse -force
升级npm有它自己的问题:
有可能是你之前试图升级npm,它不知何故失败,然后你去找这个工具。 如果工具无法升级,可能会因在
npm install npm
或npm upgrade npm
期间所做的部分更改而感到困扰。 在这种情况下,您将不得不完全卸载节点:卸载Node.js(选择卸载,不是修复选项)。
进入
%programfiles%\nodejs
并删除整个文件夹。删除
%appdata%\npm
和%appdata%\npm-cache
。编辑你的PATH并删除引用npm的所有东西(这样做,点击“开始”并搜索“环境变量”)。
重新安装Node,然后安装这个工具 – 只使用这个工具升级npm,不要试图运行
npm install npm
。
参考
npmjs文档:前缀配置
Get-ChildItem for FileSystem
使用PowerShell在PATH中查找文件
Microsoft NodeJS指南
Environment.SpecialFolder枚举(系统)
通用文件夹变量 – Windows Defender安全情报
KNOWNFOLDERID(Windows)
我遇到了同样的问题,通过删除程序文件(x64)中的node.js文件夹并解决它