如何从Windows完全删除Node.js


270

我卸载了先前版本的node.js(0.8.11),并从node.js网站下载了最新版本0.10.24并进行了安装。但是,在运行之后node --version,它仍然表明我正在运行v0.8.11。显然,在卸载过程中遗留了一些东西,这导致我尝试通过npm添加模块时遇到各种错误。我已经看到了针对OSX和Linux的解决方案,但找不到适用于Windows的任何东西。我正在运行Windows 7 64位。


3
这听起来很糟糕,但是您之后又重启了吗?
brandonscript

Answers:


644

如何从Windows中删除Node.js:

  1. 深吸一口气。

  2. npm cache clean --force

  3. 使用卸载程序从“程序和功能”中卸载。

  4. 重新启动(或者您可能可以通过从任务管理器中杀死所有与节点相关的进程来逃脱)。

  5. 查找这些文件夹,并删除它们(及其内容)(如果仍然存在)。根据您安装的版本,UAC设置和CPU体系结构,这些可能存在或可能不存在:

    • C:\Program Files (x86)\Nodejs
    • C:\Program Files\Nodejs
    • C:\Users\{User}\AppData\Roaming\npm(或%appdata%\npm
    • C:\Users\{User}\AppData\Roaming\npm-cache(或%appdata%\npm-cache
    • C:\Users\{User}\.npmrc(并可能在没有.前缀的情况下进行检查)
    • C:\Users\{User}\AppData\Local\Temp\npm-*
  6. 检查您的%PATH%环境变量,以确保没有引用Nodejs或不npm存在。

  7. 如果仍未卸载,请where node在命令提示符下键入,然后您会看到它的驻留位置-删除该文件夹(可能还要删除其父目录)。

  8. 重新启动,这是很好的措施。


1
搜索注册表时会发生什么0.8.11
brandonscript

4
啊,事实证明,我安装了Meteor,它与它自己的node.exe打包在一起。谢谢你的帮助!
Andrew De Forest

13
我也有一个%AppData%\npm-cache〜100 MB 的目录。
诡异的2014年

9
确保您也删除了%USERPROFILE%\.npmrc文件!(通常为C:\ Users \ my_username \ .npmrc)。如果这样做有误prefix=,则实际上什么都行不通,这会让您感到困惑,因为您看到的全新安装无限循环。请参阅stackoverflow.com/questions/29388730/npm-hangs-on-any-command。@brandonscript,也许将其添加到您的答案中,因为它仍然是非常受欢迎的google搜索结果。
Ward DS

3
C:\Users\{User}\.node-gyp目录呢?
克里斯蒂安·韦斯特贝克

50

方案:Windows没有用于Node安装的程序条目时删除NodeJS

我跑到哪里我的版本中的NodeJS(0.10.26)可能有问题被卸载,也不能被删除,因为程序和功能在Windows 7(又名添加/删除程序)无我有安装的的NodeJS记录......所以有除了手动删除注册表项和文件外,没有其他选项可以删除它。

验证您的NodeJS版本的命令: node --version

我尝试安装推荐的最新版本的NodeJS,但在安装过程结束时失败并回滚。多个版本的NodeJS也都失败了,安装程序也同样将它们回滚了。由于没有安装SUDO,因此无法从命令行升级NodeJS。

解决方案:在花了几个小时对问题进行故障排除(包括升级NPM)之后,我决定在现有安装之上,在系统上重新安装NodeJS的EXACT版本。

该解决方案有效,并且重新安装了NodeJS,没有任何错误。更妙的是,它还在“添加/删除程序”对话框中添加了一个正式条目。

现在Windows知道了被遗忘的NodeJS安装,因此我可以完全卸载现有版本的NodeJS。然后,我无需回滚启动就成功地为Windows平台安装了推荐的最新版本的NodeJS(在撰写本文时为4.4.5版)。

我花了一段时间才取得成功,因此我发布了此信息,以防其他有类似问题的人获得帮助。


5
如果有人想得到这个答案,请下载以下所有Node版本:nodejs.org/en/download/releases
Lucio Paiva

有效的表格,我必须从0.12.0-> 0.12.18,然后从0.12.18-> 6.5更新
Bruno Deprez

我在VS 2015/2017安装中安装了节点版本0.12.2。我需要将其升级到最新版本,因此我继续提出您的解决方案。通过安装程序安装该版本后,我能够从控制面板中删除Node.js。但是,当我检查节点的当前版本时,它仍向我显示已安装的相同版本。有任何想法吗?谢谢。
迪帕克·帕塔克

1
此解决方案在不同的计算机上为我工作了两次。它的行为表明您安装的新NodeJS版本并未真正删除。您需要一个全新的命令提示符或控制台窗口。在卸载Node之前,请确保已关闭所有正在使用的命令提示符或控制台窗口。打开一个新的命令提示符并验证版本。最后,我不相信NodeJS会写任何Win Registry注册表项,尽管您可以安装Windows路径仍引用的第二个Node安装,例如从IDE或其他开发人员应用程序。
Michael M

您还可以拥有一个内存/文件锁。如果您尚未解决问题,则只需执行Windows的全新引导即可,而无需启动任何不必要的应用程序。然后尝试再次卸载NodeJS。
Michael M

11

无论您安装了哪种nodejs软件,都请再次安装。。它要求您像这样删除nodejs。 在此处输入图片说明


我试过了 我有一个节点9.x和一个节点12.x。两者都由nvm管理。它卸载了9.x,但留下了孤立的12.x。重新运行安装程序后,我仍然没有意识到我的机器上仍然有节点版本。解决方案是再次运行安装程序以重新安装它,然后将其卸载。没有更多节点,但是“ nvm list”仍然显示这两个版本。
Mark Irvin

@Mark Irvin,这是因为它适用于特定版本,并且如果您使用的是安装程序
David Lee,

10

我实际上在Microsoft卸载中失败。我已经安装了node-v8.2.1-x64,并且需要运行版本node-v6.11.1-x64。

卸载失败,并显示以下错误:“ Windows无法访问指定的设备,路径或文件”或类似内容。

我最后转到“下载”文件夹,右键单击“ node-v8.2.1-x64 MSI”并选择“卸载”。

问候,乔恩


5

就我而言,仅上述一项是行不通的。我已经安装和卸载几个版本中的NodeJS修复这个错误:在故宫Windows错误:EISDIR,请阅读错误(原生),我一直得到任何NPM命令我试图运行工作,其中包括故宫版本: npm -v

因此,删除了nodejs文件夹中的npm目录,并从npm dist复制了最新的npm版本:


2
哇,从Windows删除Node很麻烦,不是吗?我不认为这是一种普遍的状态,但是显然对我们许多人来说都是这样。对于npm和node是本地的。
Michael M

0

昨天我遇到了同样的问题,我的解决方法是:1.从Controlpanel而不是从您的cli卸载2.从其网站上下载并安装最新或所需版本的节点3.如果错误地尝试通过cli进行卸载( (通常不会完全删除),那么在这种情况下,您不会在cpanel中获得卸载选项,请安装相同版本的节点,然后按照我的步骤1。

希望它能帮助某人。


0

我来这里是因为“添加/删除程序”中没有“删除”按钮。有人说“ Node.js无法删除”。

这工作:

  1. 得到了我安装的Node版本的.msi。运行它以修复安装,以防万一。
  2. 打开管理员命令提示符并运行msiexec /uninstall <node.msi>

-3

最好的办法是从控制面板中删除Node.js。删除后,下载所需版本的Node.js并安装它即可使用。


3
如问题中所述,较旧的nodejs由用户卸载并安装了最新版本,然后他遇到了一个问题,这就是他发布此问题的原因,您可能没有遇到相同的问题,因此这不是对该问题的答案。
dkb
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.