即使在我安装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,然后在我的系统上从头安装整个程序。


当前回答

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

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

其他回答

对于brew用户,OSX:

要删除:

brew uninstall node; 
# or `brew uninstall --force node` which removes all versions
brew cleanup;
rm -f /usr/local/bin/npm /usr/local/lib/dtrace/node.d;
rm -rf ~/.npm;

要安装:

brew install node;
which node # => /usr/local/bin/node
export NODE_PATH='/usr/local/lib/node_modules' # <--- add this ~/.bashrc

您可以运行brew info node以获取有关节点安装的更多详细信息。


考虑使用NVM而不是brew

NVM(节点版本管理器)是用于管理多个版本的节点的便携式解决方案

https://github.com/nvm-sh/nvm

> nvm uninstall v4.1.0
> nvm install v8.1.2
> nvm use v8.1.2
> nvm list
         v4.2.0
         v5.8.0
        v6.11.0
->       v8.1.2
         system

当您在具有不同节点依赖关系的不同项目之间切换时,可以使用AVN自动切换版本。

我不确定是因为我有一个旧版本(4.4.5),还是因为我使用了官方安装程序,但其他答案中引用的大多数文件在我的系统中不存在。我只需要删除以下内容:

~/.node-gyp
~/.node_repl_history
/usr/local/bin/node
/usr/local/bin/npm
/usr/local/include/node
/usr/local/lib/dtrace/node.d
/usr/local/lib/node_modules
/usr/local/share/doc/node
/usr/local/share/man/man1/node.1
/usr/local/share/systemtap/tapset/node.stp

我决定保留~/.npm,因为我计划用Homebrew重新安装Node。

第一:lsbom-f-l-s-pf/var/db/receives/org.nodejs.pkg.bom |读取f时;执行sudo rm/usr/local/${f};完成sudo rm-rf/usr/local/lib/node/usr/local/lib-node_modules/var/db/receives/org.nodejs*概括一下,完全卸载node+npm的最佳方法(我已经找到)是执行以下操作:转到/usr/local/lib并删除任何节点和node_modulescd/usr/local/libsudo rm-rf节点*转到/usr/local/include并删除任何节点和node_modules目录cd/usr/local/includesudo rm-rf节点*如果使用brew安装节点进行安装,则在终端中运行brew卸载节点brew卸载节点检查主目录中的任何“本地”或“lib”或“include”文件夹,并从中删除任何“node”或“node_modules”转到/usr/local/bin并删除任何节点可执行文件cd/usr/local/binsudo rm-rf/usr/local/bin/npmls-las您可能还需要执行其他说明:sudo rm-rf/usr/local/share/man/man1/node.1sudo rm-rf/usr/local/lib/dtrace/node.dsudo rm-rf~/.npm

来源:tonyMtz

我在mac上卸载Node.js时遇到了一个问题。我有一些奇怪的行为,比如npm仍然存在,即使在不得不删除它之后。

这是因为我用macport完成了旧的安装。因此,您还必须使用以下端口卸载它:

sudo port uninstall nodejs

它可能安装了许多不同版本的Node.js,所以请将它们全部卸载(逐个卸载)。

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

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