`yo angular` дает ошибку: npm ERR! код ENOENT npm ERR! errno 34 (да, я очистил кеш и установил .npmignore)
Я попытался запустить yo angular
в новом каталоге проекта, но он дал мне ошибку ENOENT где-то на этом пути. Да, я посмотрел на этот аналогичный вопрос, но его решение не работает для меня.
Я запускал эти вещи в пустом каталоге проектов перед запуском yo angular
:
touch .npmignore
npm cache clear
npm cache clean
Но я все еще получаю:
npm ERR! Error: ENOENT, lstat '/home/ubuntu/app_c/node_modules/grunt/ internal-tasks/bump.js'
npm ERR! If you need help, you may report this *entire* log,
npm ERR! including the npm and node versions, at:
npm ERR! <http://github.com/npm/npm/issues>
npm ERR! System Linux 3.2.0-54-virtual
npm ERR! command "/home/ubuntu/local/bin/node" "/home/ubuntu/local/bin/ npm" "install"
npm ERR! cwd /home/ubuntu/app_c
npm ERR! node -v v0.10.26
npm ERR! npm -v 1.4.3
npm ERR! path /home/ubuntu/app_c/node_modules/grunt/internal-tasks/bump. js
npm ERR! fstream_path /home/ubuntu/app_c/node_modules/grunt/internal- tasks/bump.js
npm ERR! fstream_type File
npm ERR! fstream_class FileWriter
npm ERR! code ENOENT
npm ERR! errno 34
npm ERR! fstream_stack /home/ubuntu/local/lib/node_modules/npm/ node_modules/fstream/lib/writer.js:284:26
npm ERR! fstream_stack Object.oncomplete (fs.js:107:15)
Как я могу это исправить?
Вот история ВСЕХ команд в хронологическом порядке, которые я запускал на совершенно новом Ubuntu Server 12.04.3, поэтому вы можете точно увидеть, что привело к этой точке, и где я установил различные пакеты.
Этот вопрос связан с npm проблема github.
Ответы
Ответ 1
EDIT: npm update -g
, за которым следует npm cache clear
, должен работать в большинстве случаев. Однако при первой установке на Mac OS вам может понадобиться перейти к вашей папке usr/local/lib/node_modules
после того, как узел nodeJS будет установлен первым и предоставит разрешение на чтение/запись "Каждому". Node не сможет установить дополнительные компоненты рабочего процесса глобально до тех пор, пока эти разрешения не будут выпущены. Вы не хотите sudo команды установки npm, потому что тогда у этих инструментов не будет доступа sudo для запуска после факта. Разрешения на чтение/запись изменяются щелчком правой кнопкой мыши по папке и перехода к "Получить информацию", а затем изменения разрешений в нижней части всплывающего окна.
У меня была такая же проблема на машине Windows 7. Вот шаги, которые я предпринял для решения:
- ремонт Node установка
- открыть повышенный cli
- run
npm update -g
- run
npm cache clear
- run
npm install -g yo
- run
npm cache clear
- run
npm install -g generator-angular
- run
npm cache clear
- создан новый каталог
- run
yo angular test
- run
npm cache clear
- run
grunt serve
Я столкнулся с некоторыми другими проблемами с karma.conf.js, где пути имели \
вместо /
для bower_components. Кроме того, я заметил, что в my app.js были добавлены дополнительные модули angular, несмотря на то, что они не были включены в мою сборку io из cli. Я сообщил об этих проблемах в github.
Ответ 2
npm ERR! команда "/home/ubuntu/local/bin/ node"
Вы устанавливаете в каталог пользователя? У меня тоже были ошибки ENOENT.
Мне нужно было mkdir некоторых каталогов. Если их там нет, попробуйте создать некоторые из каталогов в debug.log, например lib/ node_modules.
Ответ 3
Обновите node (и npm) до последней версии, и это должно решить проблему.
Ответ 4
Эти ошибки ENOENT
(а иногда и EACCES
) часто вызывают старые версии npm
. К сожалению, даже последняя версия node
не распространяет текущую версию npm
.
После установки node
запустите npm -v
. Если вы не видите 2.1.18
или более позднюю версию, вам следует обновиться после официальных инструкций здесь https://github.com/npm/npm/wiki/Troubleshooting#try-the-latest-stable-version-of-npm
В OSX быстрый способ обновления - sudo npm install -g [email protected]
В Windows следуйте указаниям в вики или прочитайте этот ответ Как обновить npm в Windows?
cmd.exe
cd C:\Program Files (x86)\nodejs
npm install [email protected]
Ответ 5
Моя проблема была сломанной package.json. Возможно, это поможет кому-то.