Ошибка ngCordova bower - есть идеи, как исправить?

Я попытался убедиться, что использую последнюю версию, поскольку мой медиа-плагин 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."

Любые идеи?


person Subjective Effect    schedule 20.09.2015    source источник
comment
Какую команду вы выполняете? Вы пробовали с sudo?   -  person Mati Tucci    schedule 21.09.2015
comment
Я пытаюсь обновить его с помощью строки, которую он мне дает -npm update -g bower. Если вы попробуете это с помощью sudo, он скажет мне, что мне не нужно sudo.   -  person Subjective Effect    schedule 21.09.2015
comment
Хм, попробуйте это   -  person Mati Tucci    schedule 21.09.2015
comment
Я все это пробовал. Ничего из этого не работает. Я также пытался удалить и переустановить Bower. Удаление кажется нормальным, затем установка не работает.   -  person Subjective Effect    schedule 22.09.2015
comment
Возможно, это связано с лицензионным соглашением xcode. Пожалуйста, попробуйте sudo xcodebuild -license.   -  person Julio Betta    schedule 23.09.2015
comment
Кажется, это удалось! Спасибо.   -  person Subjective Effect    schedule 24.09.2015


Ответы (3)


Ошибка указывает на проблемы с принятием лицензионного соглашения Xcode/iOS, которое зависит от Cordova (для обеспечения работы эмуляции iOS).

Я предполагаю, что Xcode уже был установлен npm/bower, вам просто нужно открыть его в первый раз (Cmd-Space, затем ввести Xcode), чтобы принять лицензионное соглашение, а затем повторно запустить bower install ngCordova.

Если Xcode еще не установлен, вероятно, будет проще установить его вручную (см. здесь для подробностей), откройте его один раз и повторно запустите bower install ngCordova.

Кстати, ilj прав, обычно запускать npm или bower под sudo — плохая практика. Это приводит к разного рода червям.

person Fridjon Gudjohnsen    schedule 29.09.2015

Bower жалуется, что вы запускаете его как root, что обычно является плохой практикой. вам нужно запустить его как «bower --allow-root».

person ilj    schedule 28.09.2015

У меня была такая же проблема с Ionic. Причина была в том, что xCode обновился до более новой версии, а я не принял условия и не запустил его после обновления.

Просто откройте xCode и повторите попытку.

person user3179712    schedule 29.10.2015
comment
Да, ты прав. Парень выше, вы идете к нему первым. - person Subjective Effect; 31.10.2015