Apache Cordova 安装在 Yosemite 上失败

Apache Cordova Installation fails on Yosemite

我正在尝试使用 Apache 网站上的命令行安装 cordova CLI。 我不明白发生了什么,但我不能。

我尝试了以下命令行,几乎直接失败了(它在 ~/.npm 文件夹中创建了一个 cordova 目录):

$ npm install -g cordova
npm ERR! Darwin 14.3.0
npm ERR! argv "node" "/usr/local/bin/npm" "install" "-g" "cordova"
npm ERR! node v0.12.7
npm ERR! npm  v2.11.3
npm ERR! path /usr/local/lib/node_modules/cordova
npm ERR! code EACCES
npm ERR! errno -13

npm ERR! Error: EACCES, rmdir '/usr/local/lib/node_modules/cordova'
npm ERR!     at Error (native)
npm ERR!  { [Error: EACCES, rmdir '/usr/local/lib/node_modules/cordova']
npm ERR!   errno: -13,
npm ERR!   code: 'EACCES',
npm ERR!   path: '/usr/local/lib/node_modules/cordova' }
npm ERR! 
npm ERR! Please try running this command again as root/Administrator.
npm ERR! error rolling back Error: EACCES, rmdir '/usr/local/lib/node_modules/cordova'
npm ERR! error rolling back     at Error (native)
npm ERR! error rolling back  { [Error: EACCES, rmdir '/usr/local/lib/node_modules/cordova']
npm ERR! error rolling back   errno: -13,
npm ERR! error rolling back   code: 'EACCES',
npm ERR! error rolling back   path: '/usr/local/lib/node_modules/cordova' }

然后我尝试使用 sudo 运行 它。它似乎在 ~/.npm 中提取了几个目录,但它仍然在控制台中 运行ning 而没有在调试文件中记录任何内容(都不在控制台中)。 几分钟后,我得到了一个非常非常奇怪的行为。似乎我失去了互联网连接,因为在我终止控制台中的安装之前我无法访问浏览器上的任何内容(我尝试了 4 次以确保这不是巧合,而且在我键入 ctrl 的那一刻绝对不是因为+c,我的网页正在加载)。但更奇怪的是,我的浏览器无法加载任何页面,但我无法从控制台 window ping www.google.com。

我不知道该怎么办:)

我在安装cordova时遇到了同样的问题。这是我所做的 -

sudo npm cache clean

然后,

sudo npm install -g cordova

我还有更新的 npm 版本。因此,如果它不起作用,请尝试将您的 npm 升级到 v2.12.1(my version) 或更高版本。

如果您仍然发现任何错误(即 ENOENT),我会说从 nodejs.org 卸载并重新安装 node 或使用 brew(最佳方式)。