ngCordova凉亭错误 - 任何想法如何解决?

时间:2015-09-20 22:13:47

标签: angularjs plugins ionic ngcordova

我试图确保我使用的是最新版本,因为我的ngCordova媒体插件由于某种原因无效。

我收到此错误:

npm WARN locking Error: EACCES, open '/Users/SubjectiveEffect/.npm/_locks/bower-e8debc5417026b57.lock'
npm WARN locking     at Error (native)
npm WARN locking  /Users/SubjectiveEffect/.npm/_locks/bower-e8debc5417026b57.lock failed { [Error: EACCES, open '/Users/SubjectiveEffect/.npm/_locks/bower-e8debc5417026b57.lock']
npm WARN locking   errno: -13,
npm WARN locking   code: 'EACCES',
npm WARN locking   path: '/Users/SubjectiveEffect/.npm/_locks/bower-e8debc5417026b57.lock' }
npm ERR! Darwin 14.5.0
npm ERR! argv "node" "/usr/local/bin/npm" "install" "-g" "bower"
npm ERR! node v0.12.7
npm ERR! npm  v2.11.3

npm ERR! Attempt to unlock /usr/local/lib/node_modules/bower, which hasn't been locked
npm ERR! 
npm ERR! If you need help, you may report this error at:
npm ERR!     <https://github.com/npm/npm/issues>

npm ERR! Please include the following file with any support request:
npm ERR!     /Users/SubjectiveEffect/myApp/npm-debug.log

我不知道如何解决这个问题。

任何想法?

编辑:我做了一些整理,卸载和重新安装。当我尝试“bower install ngCordova”

时,我现在收到此错误
"bower cached git://github.com/driftyco/ng-cordova.git#0.1.12-alpha
bower validate 0.1.12-alpha against git://github.com/driftyco/ng-cordova.git#*
bower ECMDERR Failed to execute "git ls-remote --tags --heads        git://github.com/driftyco/ng-cordova.git", exit code of #69 Agreeing to the    Xcode/iOS license requires admin privileges, please re-run as root via sudo.

Additional error details:
Agreeing to the Xcode/iOS license requires admin privileges, please re-run as root via sudo."

但如果我尝试用sudo运行它,我会被告知:

"bower ESUDO Cannot be run with sudo

Additional error details:
 Since bower is a user command, there is no need to execute it with superuser permissions.
If you're having permission errors when using bower without sudo, please spend a few minutes learning more about how your system should work and make any necessary repairs."

有什么想法吗?

3 个答案:

答案 0 :(得分:3)

该错误表明接受Xcode / iOS许可协议的问题,这是cordova的依赖(以使iOS仿真工作)。

我想npm / bower已经安装了Xcode,你只需要第一次打开它(Cmd-Space,然后键入Xcode)接受许可协议,然后重新运行{{1 }}

如果尚未安装Xcode,手动安装可能不那么麻烦(详见here),打开一次并重新运行bower install ngCordova

顺便说一下,ilj是对的,在sudo下运行npm或bower通常是一种不好的做法。这导致了各种各样的蠕虫罐。

答案 1 :(得分:2)

bower抱怨你以root身份运行它,这通常是一种不好的做法。你需要将它作为“bower --allow-root”运行。

答案 2 :(得分:1)

Ionic遇到了同样的问题。原因是xCode已更新为更新版本,我没有接受这些条款或在更新后启动它。

只需打开xCode然后重试。