Chocolatey 卸载 NodeJS Windows 8

Chocolatey 卸载 NodeJS Windows 8

好的,我使用cinst nodejsWhich 安装 NodeJS 到 Chocolatey bin 目录中,并依赖 NPM 来安装 NodeJS。

然后我意识到我想要安装 NodeJS.Install,它使用依赖于 NPM 的主 NodeJS 安装将 NodeJS 安装到我的 ProgramFiles 目录中。

我的问题: 现在两者都已安装。当我运行 node 或 NPM 命令时将使用哪一个?如果cuninst nodejs不起作用,我该如何从 Chocolatey bin 中卸载 NodeJS?

答案1

安装的 nodejs 版本已安装 npm,因此您不需要它。但是删除 nodejs 包是不够的,因为它是一个指向或*.install包的元包*.commandline

请执行以下操作:

  1. 确保您使用的是较新版本的 choco(0.9.9.x 系列)
  2. choco uninstall npm -dvyaf
  3. choco uninstall nodejs.commandline -dvyaf

这将删除所有版本的 npm 并删除路径上的 bin 文件(shim 重定向)。然后它将删除可移植版本的 nodejs(nodejs.commandline)及其所有版本。这些是强制删除以彻底清理目录。

如果您已经完成其中一些操作,只需进入目录并删除以和%ChocolateyInstall%\lib开头的文件夹。npmnodejs.commandline

答案2

好的,我做了一些实验,结果发现,cuninst nodejs没有完成工作,因为 NodeJS 需要包本身中的 chocolateyUninstall.ps1,而许多当前可用的包都没有。

因此如果我运行以下命令:
巧克力清单 -localonly

我回复说:

curl 7.28.1
...
...
nodejs.命令行 0.10.35
nodejs.安装 0.10.35
npm 1.4.9

我想删除的项目nodejs 0.10.35是 Chocolatey bin 安装。我想保留其他项目。因此,当我列出我的软件包时,我只使用我看到的名称,nodejs 0.10.35换句话说:

C:\Windows\System32> cuninst nodejs 0.10.35

现在当我跑步时:
巧克力清单 -localonly

我回复说:

curl 7.28.1
...
...
nodejs 0.10.35
nodejs.commandline 0.10.35
nodejs.install 0.10.35
npm 1.4.9

现在我第一次设置的附加版本已经消失了。它从未设置过 2 个版本的 NPM,因为它是一个依赖项,在我第二次设置 NodeJS.Install 时它已经存在。此外,当我安装了两个版本时,它默认使用巧克力味/垃圾桶版本由于某种原因,不是程序文件版本。我认为这很奇怪。

如果我说的任何内容似乎有误,请随时回答这个问题。我不是 Chocolatey 的高级用户,所以,如果你知道我的答案在某种程度上是错误的,我会检查你的答案,如果它确实纠正了我的答案,我会将其标记为正确

相关内容