Подтвердить что ты не робот

Что означает "недействительный" при использовании списка npm?

Я новичок в nodejs, и я только что установил модуль боулера по всему миру. С тех пор команда npm list дает следующий результат, который я искал в Интернете, но не смог найти никакой помощи:

**npm ERR! invalid: [email protected] /usr/local/lib/node_modules/bower/node_modules/chalk  
npm ERR! invalid: [email protected] /usr/local/lib/node_modules/bower/node_modules/chalk/node_modules/has-ansi/node_modules/ansi-regex  
npm ERR! invalid: [email protected] /usr/local/lib/node_modules/bower/node_modules/update-notifier/node_modules/configstore  
npm ERR! invalid: [email protected] /usr/local/lib/node_modules/bower/node_modules/update-notifier/node_modules/latest-version/node_modules/package-json/node_modules/got/node_modules/object-assign  
npm ERR! invalid: [email protected] /usr/local/lib/node_modules/bower/node_modules/update-notifier/node_modules/latest-version/node_modules/package-json/node_modules/registry-url  
npm ERR! invalid: [email protected] /usr/local/lib/node_modules/bower/node_modules/update-notifier/node_modules/string-length/node_modules/strip-ansi  
npm ERR! not ok code 0**

Остальная часть вывода является нормальной и перечисляет установленные модули. Может ли кто-нибудь объяснить, что происходит?

4b9b3361

Ответ 1

Я получал эту ошибку с тем же пакетом, который установлен как в "зависимостях", так и "devDependencies" с разными версиями.

Ответ 2

Это означает, что что-то зависит, например, от "async":"0.9.3", но когда они делают require("async"), npm думает, что они получат другую версию. Также проверьте наличие зависимостей и их версий, перечисленных в вашем файле package.json.

Если все правильно, вы можете решить эту проблему с помощью

npm update 

за которым следует

npm install.

Ответ 3

Я получал эту ошибку после установки более новой версии модуля без обновления моего package.json. Поэтому пакет .json требовал более старую версию, а npm list обнаруживал более новую версию в моем каталоге node_modules.

Выполнение следующей команды избавило меня от сообщения.

npm install {required_module}@{new_version} --save

Ответ 4

Я получал связанную, но другую ошибку (но в итоге здесь, поэтому я отвечаю здесь), где после запуска npm update я бы получил. (Нет такой проблемы с npm install, fwiw)

[email protected] /home/malcolm/myapp
├── [email protected]  invalid

Пакет beeminder - это тот, который я поддерживаю, поэтому в моем основном приложении я установил свой semver на latest. Раньше это работало нормально, но я думаю, что новой версии npm не нравится.

Я полагал, что разумно просто использовать ^1.4.3, потому что, если я буду вводить новые изменения, я, вероятно, все равно изменю свой собственный код. Но если по какой-то странной причине вам понадобится последняя версия пакета (включая нарушение изменений!), Вы можете использовать >= в качестве префикса вместо ^.