Я начинаю научиться создавать современные веб-приложения с помощью руководства по AngularJS и очень рано сталкиваюсь с проблемами.
У меня установлен узел:
/path/ang-news node -v
v0.10.26
Раньше я использовал NPM, но у меня были проблемы с Йоменом. Я повторил эти шаги некоторое время назад, но Grunt перестал работать, поэтому я начал все заново.
Я побежал:
$ sudo npm install -g generator-angular
и все зависимости устанавливались, пока я не получил:
npm WARN package.json [email protected] No repository field.
npm ERR! peerinvalid The package generator-karma does not satisfy its siblings' peerDependencies requirements!
npm ERR! peerinvalid Peer [email protected] wants generator-karma@>=0.8.2
Затем я попытался обновить:
$ npm update -g
Я должен был запустить это как администратор. Я получил массу сообщений об ошибках, это казалось наиболее подходящим:
npm ERR! Please try running this command again as root/Administrator.
npm ERR! System Darwin 13.1.0
npm ERR! command "/usr/local/bin/node" "/usr/local/bin/npm" "update" "-g"
npm ERR! cwd /path/ang-news
npm ERR! node -v v0.10.26
npm ERR! npm -v 1.4.3
npm ERR! not ok code 0
Затем я попытался удалить генератор-карму и начать все заново:
$ sudo npm uninstall -g generator-karma
но получил:
sudo: npm: command not found
$ npm -v
-bash: /usr/local/bin/npm: No such file or directory
Первый вопрос: почему внезапно исчез NPM?
[РЕДАКТИРОВАТЬ: Престижность @ try-catch-finally за указание на хаос, который происходит при переключении между обычным пользователем и sudo при выполнении команд. Оказывается, я испортил свою пользовательскую среду, и NPM больше не был установлен.]
Насколько я понимаю, NPM устанавливается при установке Node, поэтому мой второй вопрос: как переустановить только NPM? Я бы предпочел не переустанавливать Node с самого начала.
[РЕДАКТИРОВАТЬ: Престижность @hawk и @ try-catch-finally - не похоже, что установка только NPM является вариантом, но есть простые способы переустановить оба.]
$ npm update -g
, как вы написали, выглядит неправильно, если вы имеете дело с глобальными пакетами, вам также нужно запустить это как root. Забавно: затем вы использовалиsudo
, но выполнили другую командуnpm
. Может, вы испортили пользовательскую среду? Не могли бы вы проверить, что/usr/local/bin/npm
действительно не существует? Пожалуйста, попробуйтеfind /usr
это. Об исходной ошибкеPeer [email protected] wants generator-karma@>=0.8.2
: Похоже, ребята изgenerator-angular
обновили зависимости, которых нет в репо (я сталкивался с такими проблемами). - person try-catch-finally   schedule 24.06.2014$ find/usr npm
-bash: find/usr: No such file or directory
` Приятно знать, что я не единственный, кто сталкивается с проблемами с обновленными зависимостями, которых нет в репо. Спасибо! - person Rotimi   schedule 24.06.2014./configure; make; make install
? Кому принадлежит/usr/local/bin/npm
?root.root
? - person try-catch-finally   schedule 24.06.2014find /usr
(пробел междуfind
и путем)! Пожалуйста, подумайте;) Пожалуйста, также введитеwhereis node
иwhereis npm
, чтобы показать весь путь, предоставляющийnode
иnpm
. --- Пожалуйста, добавьте свои наблюдения к своему сообщению, отредактировав его! - person try-catch-finally   schedule 24.06.2014