Проблемы запуска Npm в приложении AngularJS phonecat
Я скачал приложение AngularJS phonecat и глобально установил bower,http-сервер, карму, транспортир. Но когда я перехожу в каталог с кодом и пробую 'npm start', он запускает 'npm install' и показывает следующую ошибку:
angular-phonecat@0.0.0 prestart / Пользователи / twer / angular-phonecat
установка npm
Ошибка блокировки npm: EACCES, открыть '/Users/twer/.npm/_locks/bower-d21e2b2886728075.lock' Блокировка npm WARN при ошибке (собственная) npm Блокировка WARN /Users/twer/.npm/_locks/bower-d21e2b2886728075. блокировка завершилась неудачно { [Ошибка: EACCES, открыть '/Users/twer/.npm/_locks/bower-d21e2b2886728075.lock'] npm ПРЕДУПРЕЖДЕНИЕ, блокирующее errno: -13, npm Код блокировки WARN: 'EACCES', npm Путь блокировки WARN: '/Users/twer/.npm/_locks/bower-d21e2b2886728075.lock' } npm ERR! Дарвин 13.4.0 нпм ERR! argv "узел" "/usr/local/bin/npm" "установить" npm ERR! узел v0.12.2 нпм ERR! npm v2.7.4
нпм ERR! Попытка разблокировать /Users/twer/angular-phonecat/node_modules/bower, которая не была заблокирована npm Ошибка блокировки WARN: EACCES, откройте /Users/twer/.npm/_locks/http-server-0dbc63e1ce281434.lock' npm Блокировка WARN при ошибке (собственная) npm Блокировка WARN /Users/twer/.npm/_locks/http-server-0dbc63e1ce281434.lock не удалось { [Ошибка: EACCES, открыть '/Users/twer/.npm/_locks/http-server-0dbc63e1ce281434.lock'] npm ПРЕДУПРЕЖДЕНИЕ о блокировке WARN: -13, npm, код блокировки WARN:' EACCES ', npm, путь блокировки WARN: '/Users/twer/.npm/_locks/http-server-0dbc63e1ce281434.lock' } npm ERR! Дарвин 13.4.0 нпм ERR! argv "узел" "/usr/local/bin/npm" "установить" npm ERR! узел v0.12.2 нпм ERR! npm v2.7.4
нпм ERR! Попытка разблокировать /Users/twer/angular-phonecat/node_modules/http-сервер, который не был заблокирован npm Ошибка блокировки WARN: EACCES, откройте /Users/twer/.npm/_locks/shelljs-e4f96e79494ea210.lock' npm Блокировка WARN при ошибке (собственная) npm Блокировка WARN /Users/twer/.npm/_locks/shelljs-e4f96e79494ea210.lock не удалось { [Ошибка: EACCES, открыть '/Users/twer/.npm/_locks/shelljs-e4f96e79494ea210.lock'] npm ПРЕДУПРЕЖДАЮЩАЯ блокировка errno: -13, npm ПРЕДУПРЕЖДАЮЩИЙ код блокировки: 'EACCES', npm ПРЕДУПРЕЖДАЮЩИЙ путь блокировки: '/Users/twer/.npm/_locks/shelljs-e4f96e79494ea210.lock' } npm ERR! Дарвин 13.4.0 нпм ERR! argv "узел" "/usr/local/bin/npm" "установить" npm ERR! узел v0.12.2 нпм ERR! npm v2.7.4
нпм ERR! Попытка разблокировать /Users/twer/angular-phonecat/node_modules/shelljs, которая не была заблокирована npm Ошибка блокировки WARN: EACCES, открыть файл /Users/twer/.npm/_locks/karma-e8390a258c010e78.lock'блокировка npm WARN при ошибке (собственный) npm ПРЕДУПРЕЖДЕНИЕ блокирует /Users/twer/.npm/_locks/karma-e8390a258c010e78.lock fail { [Ошибка: EACCES, открыть '/Users/twer/.npm/_locks/karma-e8390a258c010e78.lock'] npm ПРЕДУПРЕЖДЕНИЕ, блокировка errno: -13, npm, код блокировки WARN: 'EACCES', npm, путь блокировки WARN: '/Users/twer/.npm/_locks/karma-e8390a258c010e78.lock' } npm ERR! Дарвин 13.4.0 нпм ERR! argv "узел" "/usr/local/bin/npm" "установить" npm ERR! узел v0.12.2 нпм ERR! npm v2.7.4
нпм ERR! Попытка разблокировать /Users/twer/angular-phonecat/node_modules/karma, которая не была заблокирована npm Ошибка блокировки WARN: EACCES, открыть '/Users/twer/.npm/_locks/protractor-a03b9e77140a9911.lock' блокировка npm WARN при ошибке (собственный) npm ПРЕДУПРЕЖДЕНИЕ блокировка /Users/twer/.npm/_locks/protractor-a03b9e77140a9911.lock fail { [Ошибка: EACCES, открыть '/Users/twer/.npm/_locks/protractor-a03b9e77140a9911.lock'] npm ПРЕДУПРЕЖДЕНИЕ, блокировка errno: -13, npm, код блокировки WARN: 'EACCES', npm, путь блокировки WARN: '/Users/twer/.npm/_locks/protractor-a03b9e77140a9911.lock' } npm ERR! Дарвин 13.4.0 нпм ERR! argv "узел" "/usr/local/bin/npm" "установить" npm ERR! узел v0.12.2 нпм ERR! npm v2.7.4
нпм ERR! Попытка разблокировать /Users/twer/angular-phonecat/node_modules/protractor, который не был заблокирован npm. Ошибка блокировки WARN: EACCES, открыть '/Users/twer/.npm/_locks/karma-chrome-launcher-4c47483197e76b06.lock' npm ПРЕДУПРЕЖДЕНИЕ Блокировка при ошибке (собственная) npm WARN блокировка /Users/twer/.npm/_locks/karma-chrome-launcher-4c47483197e76b06.lock завершилась неудачей { [Ошибка: EACCES, open '/Users/twer/.npm/_locks/karma-chrome-launcher-4c47483197e76b06.lock'] npm ПРЕДУПРЕЖДАЮЩАЯ блокировка WARN: -13, npm ПРЕДУПРЕЖДАЮЩИЙ код блокировки:' EACCES ', npm ПРЕДУПРЕЖДАЮЩИЙ путь блокировки: '/Users/twer/.npm/_locks/karma-chrome-launcher-4c47483197e76b06.lock' } npm ERR! Дарвин 13.4.0 нпм ERR! argv "узел" "/usr/local/bin/npm" "установить" npm ERR! узел v0.12.2 нпм ERR! npm v2.7.4
нпм ERR! Попытка разблокировать /Users/twer/angular-phonecat/node_modules/karma-chrome-launcher, который не был заблокирован npm Ошибка блокировки WARN: EACCES, открыть '/Users/twer/.npm/_locks/karma-jasmine-435fcdaa8b86b427.lock' npm WARN блокировка при ошибке (собственная) npm WARN блокировка /Users/twer/.npm/_locks/karma-jasmine-435fcdaa8b86b427.lock не удалось { [Ошибка: EACCES, open '/Users/twer/.npm/_locks/karma-jasmine-435fcdaa8b86b427.lock'] npm ПРЕДУПРЕЖДАЮЩАЯ блокировка WARN: -13, npm ПРЕДУПРЕЖДАЮЩИЙ код блокировки: 'EACCES', npm WARN путь блокировки: '/Users/twer/.npm/_locks/karma-jasmine-435fcdaa8b86b427.lock' } npm ERR! Дарвин 13.4.0 нпм ERR! argv "узел" "/usr/local/bin/npm" "установить" npm ERR! узел v0.12.2 нпм ERR! npm v2.7.4
нпм ERR! Попытка разблокировать /Users/twer/angular-phonecat/node_modules/karma-jasmine, который не был заблокирован npm Ошибка блокировки WARN: EACCES, открыть '/Users/twer/.npm/_locks/tmp-44bc7858c2a6d09a.lock' npm Блокировка WARN
при ошибке (собственный) npm ПРЕДУПРЕЖДЕНИЕ блокирует /Users/twer/.npm/_locks/tmp-44bc7858c2a6d09a.lock fail { [Ошибка: EACCES, открыть '/Users/twer/.npm/_locks/tmp-44bc7858c2a6d09a.lock'] npm ПРЕДУПРЕЖДЕНИЕ, блокировка errno: -13, npm, код блокировки WARN: 'EACCES', npm, путь блокировки WARN: '/Users/twer/.npm/_locks/tmp-44bc7858c2a6d09a.lock' } npm ERR! Дарвин 13.4.0 нпм ERR! argv "узел" "/usr/local/bin/npm" "установить" npm ERR! узел v0.12.2 нпм ERR! npm v2.7.4нпм ERR! Попытка разблокировать /Users/twer/angular-phonecat/node_modules/tmp, которая не была заблокирована
нпм ERR! Дарвин 13.4.0 нпм ERR! argv "узел" "/usr/local/bin/npm" "start" npm ERR! узел v0.12.2 нпм ERR! npm v2.7.4 npm ERR! код ELIFECYCLE npm ERR! angular-phonecat@0.0.0 prestart:
npm install
нпм ERR! Статус выхода 1 нпм ERR! нпм ERR! Ошибка при предварительном запуске сценария angular-phonecat@0.0.0 'npm install'. нпм ERR! Скорее всего, это проблема пакета angular-phonecat, npm ERR! не с самой нпм. нпм ERR! Скажите автору, что это не работает в вашей системе: npm ERR! npm установить npm ERR! Вы можете получить их информацию через: npm ERR! владелец npm ls angular-phonecat npm ERR! Вероятно, есть дополнительные выходные данные регистрации.нпм ERR! Пожалуйста, включите следующий файл с любым запросом поддержки: npm ERR! /Users/twer/angular-phonecat/npm-debug.log
Как я могу это исправить? Заранее спасибо.
1 ответ
Эти ошибки означают, что npm
не может получить доступ к каталогу /Users/twer
и его подкаталоги из-за неправильных разрешений.
Ты хочешь бежать npm
с собственными правами пользователя, поэтому установите их, изменив владельца с
chown -R $USER <directory>
или же
chown -R `whoami` <directory>
- обе команды делают то же самое, где <directory>
является:
- ваш домашний каталог (
/Users/twer
) для локальных установок; - каталог вашей машины для несистемных пакетов,
/usr/local
или любой верхний каталогnpm
пытаясь использовать то, что вы видите в своих сообщениях об ошибках, вам, скорее всего, придется поставить перед командой префиксsudo
в таком случае.
Опция -R
здесь для рекурсивного, поскольку он устанавливает правильное владение также для всех подкаталогов, что именно то, что вы хотите.
Вы хотите избежать бега npm
с sudo
когда-либо, как рекомендовано npm
Создатель Исаак Шлютер:
Я настоятельно рекомендую вам не управлять пакетами с помощью sudo! Пакеты могут запускать произвольные сценарии, что делает выполнение команды менеджера пакетов такой же безопасной, как стрижка бензопилой. Конечно, это быстро и определенно преодолеет любые препятствия, но вы, возможно, захотите, чтобы это препятствие оставалось там.