我的节点版本始终是v0.6.1-pre,即使我安装了brew node和NVM安装了v0.6.19。
我的节点版本是。
node -v
v0.6.1-pre
NVM是这样说的(在我第一次在一个bash终端安装一个版本的node后)。
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)
那么,这个幽灵般的node 0.6.1-pre版本在哪里,我怎样才能摆脱它?我试图通过NPM安装库,以便我可以在一个项目上工作。
我试着用BREW在NVM之前更新,使用"brew update"和"brew install node"。 我试着删除了我的/usr/local/include中的"node"目录和我的"node_modules"中的"/usr/local/lib"。 我已经试着卸载npm,并按照这些的指示重新安装。
所有这些都是因为我试图更新一个旧版本的node来安装"zipstream"库。现在在我的用户目录中出现了一些文件夹,而节点的版本仍然没有更新,尽管NVM说它在使用0.6.19。
**我想卸载nodejs、npm和nvm,然后从头开始在我的系统上重新安装整个东西。
显然,有一个/Users/myusername/local
文件夹包含了include
与node
,lib
与node
和node_modules
。我不知道这个文件夹是如何创建的,也不知道为什么会在我的/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,就是要做以下事情。
你可能还需要做的是
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,但你也可以重新安装它。
在Mavericks上,我从node pkg(来自nodejs网站)安装它,然后我卸载它,这样我就可以用brew重新安装了。我只在终端运行4个命令。
sudo rm -rf /usr/local/lib/node_modules/npm/
2.brew uninstall node
。如果仍然有节点安装,重复步骤2。一切正常后,我使用brew install node
进行安装