Npm ERR cb() никогда не вызывал

У меня есть приложение Node.js, размещенное на Heroku. Каждый раз, когда я делаю git push heroku, я получаю следующую ошибку:

Counting objects: 14, done.
Delta compression using up to 6 threads.
Compressing objects: 100% (12/12), done.
Writing objects: 100% (12/12), 1.20 KiB, done.
Total 12 (delta 8), reused 0 (delta 0)

-----> Node.js app detected
-----> Resolving engine versions
       Using Node.js version: 0.6.20
       Using npm version: 1.2.12
-----> Fetching Node.js binaries
-----> Vendoring node into slug
-----> Installing dependencies with npm
       npm http GET https://registry.npmjs.org/pg/0.6.15
       npm http GET https://registry.npmjs.org/socket.io
       npm http 200 https://registry.npmjs.org/pg/0.6.15
       npm http GET https://registry.npmjs.org/pg/-/pg-0.6.15.tgz
       npm http 200 https://registry.npmjs.org/socket.io
       npm http GET https://registry.npmjs.org/socket.io/-/socket.io-0.9.13.tgz
       npm http 200 https://registry.npmjs.org/pg/-/pg-0.6.15.tgz
       npm http 200 https://registry.npmjs.org/socket.io/-/socket.io-0.9.13.tgz
       npm http GET https://registry.npmjs.org/socket.io-client/0.9.11
       npm http GET https://registry.npmjs.org/policyfile/0.0.4
       npm http GET https://registry.npmjs.org/base64id/0.1.0
       npm http GET https://registry.npmjs.org/redis/0.7.3
       npm http GET https://registry.npmjs.org/generic-pool/1.0.9
       npm http 200 https://registry.npmjs.org/policyfile/0.0.4
       npm http GET https://registry.npmjs.org/policyfile/-/policyfile-0.0.4.tgz

       npm http 200 https://registry.npmjs.org/base64id/0.1.0
       npm http GET https://registry.npmjs.org/base64id/-/base64id-0.1.0.tgz
       npm http 200 https://registry.npmjs.org/generic-pool/1.0.9
       npm http GET https://registry.npmjs.org/generic-pool/-/generic-pool-1.0.9
.tgz
       npm http 200 https://registry.npmjs.org/socket.io-client/0.9.11
       npm http GET https://registry.npmjs.org/socket.io-client/-/socket.io-clie
nt-0.9.11.tgz
       npm http 200 https://registry.npmjs.org/redis/0.7.3
       npm http GET https://registry.npmjs.org/redis/-/redis-0.7.3.tgz
       npm http 200 https://registry.npmjs.org/policyfile/-/policyfile-0.0.4.tgz

       npm http 200 https://registry.npmjs.org/base64id/-/base64id-0.1.0.tgz
       npm http 200 https://registry.npmjs.org/generic-pool/-/generic-pool-1.0.9
.tgz
       npm http 200 https://registry.npmjs.org/socket.io-client/-/socket.io-clie
nt-0.9.11.tgz
       npm http 200 https://registry.npmjs.org/redis/-/redis-0.7.3.tgz

       > [email protected] install /tmp/build_36us8733h7kkr/node_modules/pg
       > node-waf configure build || (exit 0)

       Checking for program g++ or c++          : /usr/bin/g++
       Checking for program cpp                 : /usr/bin/cpp
       Checking for program ar                  : /usr/bin/ar
       Checking for program ranlib              : /usr/bin/ranlib
       Checking for g++                         : ok
       Checking for node path                   : not found
       Checking for node prefix                 : ok /tmp/node-node-nNUw
       Checking for program pg_config           : /usr/bin/pg_config
       'configure' finished successfully (0.058s)
       Waf: Entering directory `/tmp/build_36us8733h7kkr/node_modules/pg/build'
       [1/2] cxx: src/binding.cc -> build/Release/src/binding_1.o
       [2/2] cxx_link: build/Release/src/binding_1.o -> build/Release/binding.no
de
       Waf: Leaving directory `/tmp/build_36us8733h7kkr/node_modules/pg/build'
       'build' finished successfully (0.492s)
       npm http GET https://registry.npmjs.org/uglify-js/1.2.5
       npm http GET https://registry.npmjs.org/ws
       npm http GET https://registry.npmjs.org/xmlhttprequest/1.4.2
       npm http GET https://registry.npmjs.org/active-x-obfuscator/0.0.1
       npm http 200 https://registry.npmjs.org/active-x-obfuscator/0.0.1
       npm http GET https://registry.npmjs.org/active-x-obfuscator/-/active-x-ob
fuscator-0.0.1.tgz
       npm http 200 https://registry.npmjs.org/uglify-js/1.2.5
       npm http GET https://registry.npmjs.org/uglify-js/-/uglify-js-1.2.5.tgz
       npm http 200 https://registry.npmjs.org/xmlhttprequest/1.4.2
       npm http GET https://registry.npmjs.org/xmlhttprequest/-/xmlhttprequest-1
.4.2.tgz
       npm http 200 https://registry.npmjs.org/ws
       npm http GET https://registry.npmjs.org/ws/-/ws-0.4.25.tgz
       npm http 200 https://registry.npmjs.org/active-x-obfuscator/-/active-x-ob
fuscator-0.0.1.tgz
       npm http 200 https://registry.npmjs.org/uglify-js/-/uglify-js-1.2.5.tgz
       npm http 200 https://registry.npmjs.org/xmlhttprequest/-/xmlhttprequest-1
.4.2.tgz
       npm http 200 https://registry.npmjs.org/ws/-/ws-0.4.25.tgz
       npm http GET https://registry.npmjs.org/zeparser/0.0.5
       npm http GET https://registry.npmjs.org/commander
       npm http GET https://registry.npmjs.org/tinycolor
       npm http GET https://registry.npmjs.org/options
       npm http 200 https://registry.npmjs.org/zeparser/0.0.5
       npm http GET https://registry.npmjs.org/zeparser/-/zeparser-0.0.5.tgz
       npm http 200 https://registry.npmjs.org/options
       npm http GET https://registry.npmjs.org/options/-/options-0.0.3.tgz
       npm http 200 https://registry.npmjs.org/tinycolor
       npm http GET https://registry.npmjs.org/tinycolor/-/tinycolor-0.0.1.tgz
       npm http 200 https://registry.npmjs.org/commander
       npm http GET https://registry.npmjs.org/commander/-/commander-0.6.1.tgz
       npm http 200 https://registry.npmjs.org/zeparser/-/zeparser-0.0.5.tgz
       npm http 200 https://registry.npmjs.org/options/-/options-0.0.3.tgz
       npm http 200 https://registry.npmjs.org/tinycolor/-/tinycolor-0.0.1.tgz
       npm http 200 https://registry.npmjs.org/commander/-/commander-0.6.1.tgz

       > [email protected] install /tmp/build_36us8733h7kkr/node_modules/socket.io/node_
modules/socket.io-client/node_modules/ws
       > (node-gyp rebuild 2> builderror.log) || (exit 0)

       make: Entering directory `/tmp/build_36us8733h7kkr/node_modules/socket.io
/node_modules/socket.io-client/node_modules/ws/build'
         CXX(target) Release/obj.target/bufferutil/src/bufferutil.o
         SOLINK_MODULE(target) Release/obj.target/bufferutil.node
         SOLINK_MODULE(target) Release/obj.target/bufferutil.node: Finished
         COPY Release/bufferutil.node
         CXX(target) Release/obj.target/validation/src/validation.o
         SOLINK_MODULE(target) Release/obj.target/validation.node
         SOLINK_MODULE(target) Release/obj.target/validation.node: Finished
         COPY Release/validation.node
       make: Leaving directory `/tmp/build_36us8733h7kkr/node_modules/socket.io/
node_modules/socket.io-client/node_modules/ws/build'
       npm ERR! cb() never called!
       npm ERR! not ok code undefined
       npm ERR! cb() never called!
       npm ERR! not ok code 1
 !     Failed to install --production dependencies with npm
 !     Heroku push rejected, failed to compile Node.js app

To [email protected]:still-chamber-1286.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to '[email protected]:still-chamber-1286.git'

Ошибка в последних нескольких строках: npm ERR! cb() никогда не звонил!          npm ERR! не в порядке undefined         npm ERR! cb() никогда не звонил!          npm ERR! не в порядке 1    ! Не удалось установить -производственные зависимости с npm    ! Heroku push отклонено, не удалось скомпилировать Node.js app

To [email protected]:still-chamber-1286.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to '[email protected]:still-chamber-1286.git'

У меня не было проблем с продвижением моего кода в Heroku; только с понедельника я имел эту ошибку.

Я видел похожие сообщения в Интернете, ссылаясь на несколько разные ошибки, но не видел один с ! [remote rejected] master -> master (pre-receive hook declined) раньше.

Ответ 1

Если у вас npm версии 5 или выше, попробуйте сначала:

$ sudo npm cache verify

Иначе:

$ sudo npm cache clean

Мои версии узла и npm:

$ node -v
v0.10.0

$ npm -v
1.2.14

https://docs.npmjs.com/cli/cache

Ответ 3

пытаться

sudo npm cache clean --force

Ответ 4

У вас есть определенная версия "npm", указанная в "engines" в вашем package.json? Похоже, что NPM v1.2.15 разрешил проблему (и Heroku имеется). У меня была та же проблема с "1.1.x".

Ответ 5

У меня была именно эта проблема при попытке установить тему Sage для WordPress. Когда я запустил npm install в каталоге темы, это не удалось.

Просматривая зависимости в package.json, я увидел, что движок, на котором я работал для Node, устарел. Запуск node -v в командной строке показал, что я был на v0.10.9, а последняя версия Sage требует> = 0.12.0

Так что вот исправление для этого. Эти шаги взяты из блога Дэвида Уолша

  1. Очистить кэш npm: sudo npm cache clean -f кэш sudo npm cache clean -f
  2. Установите последнюю версию Node helper: sudo npm install -g n
  3. Скажите помощнику (n), чтобы установить последнюю стабильную версию Node: sudo n stable

Затем вы должны получить отображение прогресса, после чего вы будете в курсе.

Когда я запустил npm install после этого, все заработало нормально, и я смог запустить gulp для создания исходного каталога dist.

Ответ 6

Попробуйте очистить кэш npm:

sudo npm cache clean --force

Ответ 7

Если вы обновили angular cli, npm, node, вам больше ничего не нужно делать. Просто выполните команду ниже, чтобы решить проблему. Эта команда также решает проблему "неожиданного конца строки".

npm install --no-package-lock

Ответ 8

У меня была такая же проблема при установке [email protected]. Я попробовал следующие предметы, и они мне не помогли.

  • npm cache clean
  • Вручную удалить кеш из %temp%\npm-*
  • Command приглашение "Запуск от имени администратора"

Я решил проблему, установив node -v5.10.1-x64.msi(предыдущая версия была node -v5.9.0-x64.msi) и запустила npm cache clean перед установкой [email protected]

Это сработало!

Ответ 9

Обновление NodeJS https://nodejs.org/en/ Исправлена моя проблема.

Запустите npm install -g npm npm cache clean npm install -g npm и npm cache clean

Ответ 10

У меня была та же проблема с NPM версии 1.3.11, и я решил просто повторить ту же самую команду несколько раз ( "npm update -g" в моем случае). Ошибка возникла для другого пакета при каждом последующем запуске и, в конечном итоге, все обновилось успешно.

Для меня, по крайней мере, похоже, что это вызвано сетевой проблемой (коррумпированные загрузки). Я также получаю сообщение об ошибке в отношении недопустимого пакета, который я смог решить, удалив все экземпляры "tmp.tgz".

Изменить: (возможно, не связанный, но в случае, если это кому-то помогает: я использовал Windows и начал выполнение командной строки в качестве администратора после получения начальной ошибки).

Ответ 11

  • Запустите npm install -g npm
  • Затем запустите npm install

Ответ 12

sudo npm cache clean не сработал у меня. Обновление до последней версии node помогает.

У меня был node v.5.91 и обновлен до v6.9.1

Ответ 13

Похоже, что определенные версии зависимостей могут вызвать эту проблему. Например, gulp -uglifycss 1.0.7 имеет эту проблему (см. https://github.com/rezzza/gulp-uglifycss/issues/15).

Если вы разрешаете крупные или мелкие версии обновлений в packages.json через ^ или ~, удалите эти символы из файла и попробуйте другой npm install. Если это сработает в это время, тогда вы будете в порядке после того, как получите удовольствие от сужения, какой пакет вызывает проблему.

Ответ 14

Я только глобально установил новейшую версию NPM, и это сработало для меня. Я думаю, что очистка кэша npm необязательна.

npm install -g npm

Ответ 15

Для меня на npm 6.4.0 и узле 10.9.0 ни один из ответов не сработал. Переустановил узел, npm, почистил кеш, удалил папки...

После некоторой отладки выяснилось, что я использовал npm link для двух разрабатываемых модулей для связи друг с другом. После того, как я удалил и переделал какую-то ссылку, я смог снова заставить ее работать.

Ответ 16

У меня была такая же проблема при попытке установить firebase-tools в мой ноутбук с Windows. Вот как я это решил.

  1. Я скачал касперский и установил его. тогда я отключил безопасные соединения Касперского
  2. я открыл cmd и запустил эту команду npm cache clean --force
  3. затем я запускаю эту команду npm install [email protected] -g
  4. затем я запускаю команду npm install -g firebase-tools

Ответ 17

Для пользователей Ubuntu, приведенный ниже метод работал для меня.

Во-первых, выполните это: sudo npm cache verify

Затем перейдите в Home->. Npm и удалите папку _cache с помощью: sudo rm -rf _cacache/

пойти и проверить, может быть, вы нашли решение.

Ответ 18

Сегодня я тоже столкнулся с той же проблемой, поскольку вынужден был прервать загрузку пакета npm из-за проблем с интернетом.

Я пробовал разные вещи, такие как,

  1. Запуск sudo npm cache clean -f - который не работал как ожидалось
  2. Очистите узел удаления и переустановите его - что также не сработало

Я наконец попытался удалить папку, содержащую кэш npm, который создавал проблему. Я выполнил следующую команду,

sudo rm -rf/Users/{user_system_user}/.npm/

Затем я попытался установить пакет, который застрял, и все работало как шарм.

PS: замените {user_sytem_user} в соответствии с текущим пользователем вашей системы.

Ответ 19

Поднимая место, где находится mdp, проблема заключается в node 0.10.19 и npm 1.3.11

Я нашел самый простой способ управлять понижением, чтобы все делалось гладко, чтобы быть NVM, здесь - это хороший учебник о том, как его использовать. У меня была изменена и корректно изменена моя серверная среда, понизив ее с 0.10.19 до 0.10.18 в течение нескольких минут с помощью NVM.

Ответ 20

Я столкнулся с той же проблемой на моем Mac, и я попробовал все методы, которые я могу найти: обновить до последней версии Node, очистить кеш, удалить каталог _node_mudules_, но все они не имеют никакого эффекта. В конце концов, я поверил, что это проблема среды Node, поэтому я опустил свой Node до старой версии LTS 6.14.1, после чего проблема исчезла. Вот что я делаю:

  1. Установите NVM (чтобы получить совершенно новую изолированную среду узлов, вам лучше использовать NVM для управления несколькими средами узлов, перейдите сюда для получения подробной информации)

    curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.8/install.sh | bash

  2. Установите Node.js 6.14.1

    nvm install 6.14.1

  3. Переключитесь на конкретную среду Node, которую вы устанавливаете выше

    nvm use 6.14.1

  4. Установите приложение create-реагировать

    npm install -g create-react-app

  5. Создайте свое приложение реакции

    create-react-app appname

Ответ 21

npm install приведет к:

npm ERR! cb() never called!

npm ERR! This is an error with npm itself. Please report this error at:
npm ERR!     <https://github.com/npm/npm/issues>

В моем случае эта ошибка начала происходить, когда я 8.11.1 до Node.js версии 8.11.1. Ранее использовали Node.js версии 6.12.x и NPM версии 5.8.0.

В дополнение к этому мои тестовые сценарии не найдут AVA:

sh: ava: command not found
npm ERR! Test failed.  See above for more details.

Решение состояло в том, чтобы понизить NPM до 5.7.1

Ответ 22

Я предлагаю: перейти на пряжу! - Yarn - менеджер пакетов, который использует тот же файл package.json и папку node_modules что и npm.

С npm у меня была та же проблема: при установке CentOS 6 я получил ERR cb() never called ошибку несколько раз, и не мог найти способ сделать npm надежно завершить установку некоторых пакетов (например, webpack). - Пряжа работает безупречно, даже на ненадежных сетевых подключениях.

Миграция на пряжу очень проста. Большинство подкоманд одинаковы. У них есть хорошее руководство по миграции. Читайте в конце удобное сравнение команд CLI.

Ответ 23

brew uninstall node
cd /usr/local
git checkout f7bbdcc /usr/local/Library/Formula/node.rb
brew install node

Найдите другие версии, например:

brew versions node

Ответ 24

Сделайте npm install [email protected] -g для обновления npm до последней версии. Это поставило проблему для меня. Сначала я сделал npm cache clean

Ответ 25

Запустите его, не думая

npm cache clean -f

npm install -g n

n stable

npm install -g angular-cli

Ответ 26

[Работает] попробуй npm config удалить https-прокси

это противоречило бы прокси.

Ответ 27

Для тех, кто недавно обновился с 6.x до 6.7.0.

Удаление папки /Users/{YOUR USERNAME}/.npm решило мои проблемы с npm install.

Я также выполнил некоторые из этих команд, предложенных https://npm.community/t/crash-npm-err-cb-never-called/858/93?u=jasonfoglia

sudo npm cache clean -f
sudo npm install -g n

Но я не уверен, что на самом деле работал, пока я не удалил папку. Поэтому, если у вас возникла эта проблема и вы просто удалили папку .npm, исправляя ее, пожалуйста, отметьте это в комментариях.

Ответ 28

В моем случае я не мог установить плагин VueJS, и мне пришлось:

Смена владельца файлов:

Судо Чоун -R $ (whoami) ~/.npm

судо чоун -R $ (whoami)/usr/local/lib

судо чоун -R $ (whoami)/usr/local/bin

И тогда удостоверился, что у него есть последние npm:

npm install -g npm @последний

Затем установил мой плагин и в вашем случае, вероятно, ваша команда не установлена.

Ответ 29

Похоже, эта проблема не возникает с конкретной конфигурацией или версией node. Мы испытали это несколько раз, когда передислоцировали и подозревали серверы npm, чтобы вызвать эту проблему.

Повторная попытка несколько раз действительно решила проблему.

Ответ 30

Возможны две возможности = >

  • Попробуйте обновить ваши node js и npm.

  • Разрешение вопроса = > а. Переместите решение на диске c в соответствующей учетной записи пользователя б. Необходимо запустить bash или cmd как администратор.

Надеюсь, что это решит вашу проблему.