即使在我安装brew node和NVM安装v0.6.19之后,我的节点版本始终是v0.6.1-pre。

我的节点版本是:

node -v
v0.6.1-pre

NVM这样说(在我第一次在一个bash终端中安装一个版本的节点之后):

nvm ls
v0.6.19
current:    v0.6.19

但当我重启bash时,我看到的是:

nvm ls
v0.6.19
current:    v0.6.1-pre
default -> 0.6.19 (-> v0.6.19)

那么,这个幻影节点0.6.1预版本在哪里?我该如何摆脱它?我正在尝试通过NPM安装库,以便我可以在项目中工作。

我尝试在NVM之前使用BREW进行更新,使用BREW更新和BREW安装节点。我已尝试删除/usr/local/include中的“node”目录和/usr/local/lib中的“节点”和“node_modules”。我已尝试卸载npm并按照以下说明重新安装。

所有这些都是因为我试图更新节点的旧版本以安装“zipstream”库。现在我的用户目录中有文件夹,节点版本STILL不是最新的,尽管NVM说它使用的是0.6.19。

理想情况下,我希望卸载nodejs、npm和nvm,然后在我的系统上从头安装整个程序。


当前回答

除了主要答案之外,我还需要删除以下位置中的所有npm实例:

rm -rf /usr/local/share/man/man1/npm*

其他回答

在Dominic Tancredi的精彩回答的基础上,我将其转化为一个bash包和独立脚本。如果您已经在使用名为bpkg的“Back Package Manager”,则可以通过运行以下命令来安装脚本:

bpkg install -g brock/node-reinstall

或者您可以在Github上的brock/node重新安装中查看脚本。该脚本允许您使用nvm或nave重新安装节点,并将节点版本指定为默认版本。

对于任何使用n的用户,当您更改节点版本时,它将自动重新安装npm。您可以通过运行以下命令来恢复npm升级损坏:

n(选择不同的节点版本,npm将重新安装)n(这次,选择您的首选版本)npm-v(它将是npm的旧版本)npm安装-gnpm@7.x.x(插入适当版本)

显然,有一个/Users/myusername/local文件夹包含一个包含node的include和一个包含节点和node_modules的lib。我不知道它是如何创建的,为什么不是在我的/usr/local文件夹中创建的。

删除这些本地引用修复了幻象v0.6.1-pre。如果有人有解释,我会选择它作为正确答案。

编辑:

您可能还需要执行其他说明:

sudo rm -rf /usr/local/{lib/node{,/.npm,_modules},bin,share/man}/{npm*,node*,man1/node*}

其等同于(如上所述)。。。

sudo rm -rf /usr/local/bin/npm /usr/local/share/man/man1/node* /usr/local/lib/dtrace/node.d ~/.npm ~/.node-gyp 

或(同上)分解。。。

要完全卸载node+npm,请执行以下操作:

转到/usr/local/lib并删除任何节点和node_modules转到/usr/local/include并删除任何节点和node_modules目录如果使用brew安装节点进行安装,则在终端中运行brew卸载节点检查主目录中是否有任何本地或lib或include文件夹,并从中删除任何节点或node_module转到/usr/local/bin并删除任何节点可执行文件

您可能还需要执行以下操作:

sudo rm -rf /opt/local/bin/node /opt/local/include/node /opt/local/lib/node_modules
sudo rm -rf /usr/local/bin/npm /usr/local/share/man/man1/node.1 /usr/local/lib/dtrace/node.d

此外,NVM修改$HOME/.bashrc中的PATH变量,该变量必须手动还原。

然后下载nvm并按照说明安装node。我相信,最新版本的node附带了npm,但您也可以重新安装。

我在一个有很多依赖Windows的角度项目上工作,运行的是Node 14.17.0。突然,我升级到Node最新版本16.4.2,并开始出现冲突。

我决定降级,而不是一直使用传统的对等dep。

从控制面板卸载的节点只需使用安装程序再次安装节点14

一切都好了。

如果您已经安装了nvm,请执行以下命令

nvm deactivate-这将从$PATH中删除/.nvm/*/binnvm list-列出系统中安装的节点的所有版本在中,nvm uninstall<version>可以指定要卸载的所有版本。

使用nvm安装节点并使用nvm卸载总是很好的而不是酿造。

这个解决方案对我有效。

其他命令

要知道系统中安装的节点路径的节点。您可以使用此目录手动卸载节点。然后,您可能需要相应地调整PATH文件。