问题描述
我正在尝试安装mean.io样板。运行sudo npm install -g meanio@latest
时失败。在失败之前它注意到’wants’ npm版本1.4.x,而我安装了1.2.18。所以我尝试将npm更新到最新版本;几种方式。最后一个是……
ubuntu@ip-xxx-xx-xx-xxx:~$ sudo npm install -g npm
/usr/local/bin/npm -> /usr/local/lib/node_modules/npm/bin/npm-cli.js
npm@1.4.7 /usr/local/lib/node_modules/npm
ubuntu@ip-xxx-xx-xx-xxx:~$ npm --version
1.2.18
当我刚刚更新到1.4.7时,为什么它仍然显示版本1.2.18?
最佳解决思路
这将使用npm本身更新npm:
sudo npm install npm -g
如果您遇到困难,请尝试sudo npm update npm -g
。所有功劳归功于Tim Castelijns。我在ubuntu 14.04上测试了它,npm 1.3.10
请注意,如果您使用nvm来管理本地开发环境中的多个版本,例如测试目的,所有已安装的版本(由nvm ls
列出)都在〜/.nvm中,因此您只需省略系统范围的安装(即省略sudo):
npm install npm -g
DEBIAN ENTERPRISE
对于完整的企业实践,请考虑nodesource.com:
curl -sL https://deb.nodesource.com/setup | sudo bash –
如描述here。
其他企业
对于non-debian发行版,请查看节点github wiki https://github.com/joyent/node/wiki/installing-node.js-via-package-manager下载页面https://nodejs.org/en/download/
对于历史的理解:Chis Lea维持他的PPA,但现在joined forces与nodesource。
次佳解决思路
如果user3223763的答案不起作用,你可以试试这个:
sudo apt-get remove nodejs ^node-* nodejs-*
sudo apt-get autoremove
sudo apt-get clean
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install nodejs
然后 :
curl https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | sh
在此之后,打开一个新终端并检查npm版本:
npm --version
编辑/更新:
今天最后一个nvm版本是:
https://raw.githubusercontent.com/creationix/nvm/v0.25.4/install.sh
因此,CURL命令是:v0.25.4而不是v0.13.1
curl https://raw.githubusercontent.com/creationix/nvm/v0.25.4/install.sh | sh
You can check https://github.com/creationix/nvm/releases to use the correct version for further upgrades
第三种解决思路
看起来你正在使用Ubuntu(从你显示的命令行)。要更新npm
和nodejs
,您可以使用PPA存储库:
sudo add-apt-repository ppa:chris-lea/node.js
sudo apt-get update
sudo apt-get install nodejs npm
第四种思路
在Ubuntu 14.04上尝试了上面的选项,但是他们会不断产生这个错误:
npm ERR! tar pack Error reading /root/tmp/npm-15864/1465947804069-0.4854120113886893/package
然后在线找到这个解决方案
1)首先清理npm的缓存:
sudo npm cache clean -f
2)安装npm的n模块:
sudo npm install -g n
3)通过选择要安装的节点版本开始安装:稳定或最新,我们将在这里使用stable:
sudo n stable
4)检查节点的版本:
node -v
5)检查npm的版本:
npm -v
第五种思路
不要忘记再次关闭并启动终端窗口;)
(至少如果你想检查终端中的“npm –version”)
sudo npm install npm -g
这也是我的伎俩
第六种思路
你可以试试:
sudo npm i -g npm
第七种思路
要运行最新的稳定版本
npm install npm@latest -g
它对我来说效果很好!
第八种思路
升级到nodejs v0.12.7
# Note the new setup script name for Node.js v0.12
curl -sL https://deb.nodesource.com/setup_0.12 | sudo bash -
# Then install with:
sudo apt-get install -y nodejs