npm ERR cb () wurde nie aufgerufen

274

Ich habe eine Node.js App auf Heroku gehostet. Jedes Mal, wenn ich eine mache, git push herokuerhalte ich die folgende Fehlermeldung:

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

       > pg@0.6.15 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

       > ws@0.4.25 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 git@heroku.com: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'

Der Fehler ist in den letzten Zeilen: npm ERR! cb () hat nie angerufen! npm ERR! nicht ok Code undefiniert npm ERR! cb () hat nie angerufen! npm ERR! nicht ok Code 1! Fehler beim Installieren von --produktionsabhängigkeiten mit npm! Heroku Push abgelehnt, Node.js App konnte nicht kompiliert werden

To git@heroku.com: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'

Ich hatte zuvor keine Probleme damit, meinen Code an Heroku zu senden. erst seit Montag habe ich diesen Fehler gehabt.

Ich habe ähnliche Beiträge im Web gesehen, die auf leicht unterschiedliche Fehler verweisen, aber noch keinen mit gesehen ! [remote rejected] master -> master (pre-receive hook declined).

Louise K.
quelle
Ich erhalte den gleichen Fehler, wenn ich meine Knoten-App heute auf Heroku schiebe:! [remote rejected] master -> master (pre-receive hook declined)
Smithclay
6
Seltsamerweise hat das Hinzufügen "engines": { "node": "0.8.x" }zu meinem package.jsonFehler für mich behoben.
Smithclay
Es funktionierte, vielen Dank :) Obwohl es sollte beachtet werden , dass hatte ich schon "engines": { "node": "0.6.x" }in package.json, ich musste einfach , es zu ändern von 0.6.xbis0.8.x
Louise K
1
Es gibt derzeit ein offenes Problem zu diesem Fehler mit npm und Knoten 0.10.0: github.com/isaacs/npm/issues/2907
JCM
2
Ich habe dies für mich selbst behoben, indem ich einfach npm ( $> npm install -g npm) aktualisiert habe, da ich Warnungen erhielt, dass Pakete in der Konsolenausgabe sowieso eine höhere Version davon erwarten.
racl101

Antworten:

312

Wenn Sie npm Version 5 oder höher haben, versuchen Sie dies zuerst:

$ sudo npm cache verify

Andernfalls:

$ sudo npm cache clean

Meine Node- und Npm-Versionen sind:

$ node -v
v0.10.0

$ npm -v
1.2.14

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

Alberto
quelle
1
Problemumgehung geholfen, aber für den gleichen Fehler, aber während der Modulinstallation (grunt-contrib-yuidoc), danke.
Wiseman
Ist diese Lösung nicht für lokale Läufe und nicht für Heroku? Für Heroku scheint diese Lösung nicht zu funktionieren.
Valentyn Shybanov
10
Pfui. Ich habe versucht, diese Antwort zu bearbeiten, muss aber offenbar mindestens 6 Zeichen lang sein. Jedenfalls sollte es cleannicht sein clear. npmjs.org/doc/cache.html
Tyler Hayes
Ich habe diesen Fehler erhalten, nachdem ich eine native Postgres-Erweiterung erstellt habe. Rm -fr $ HOME / .node-gyp macht den Trick.
Giovanni Toraldo
2
npm cache cleanfunktioniert bei mir, da ich ständig zwischen verschiedenen npm-registern wechsle.
qmmr
141

Für alle, die diese Seite um den 29. September 2013 herum besuchen, gibt es einen geschlossenen Fehler in Node.js 0.10.19, der diesen Fehler verursacht.

https://github.com/isaacs/npm/issues/2907#issuecomment-15215278 https://github.com/joyent/node/issues/6263#issuecomment-25113849

Wenn Sie auf Heroku sind, sollten Sie auf 0.10.20 upgraden

"engines": {
    "node": "0.10.20"
}
Mark Percival
quelle
40
29. September? Ist das ein Fehler aus der Zukunft? :) Danke für die Lösung!
JBCP
1
Vielen Dank! Auf jeden Fall das, wonach ich gesucht habe
Kyle Hotchkiss
3
Du hast aus der Zukunft gepostet! Dies war in der Tat ein schwerwiegender Fehler. ; /
Juanpaco
2
45 Upvotes (zum Zeitpunkt dieses Schreibens) innerhalb von 22 Stunden :) Genial, dass Sie präventiv eine neue und aktuelle Antwort auf eine alte, aber ähnliche Frage veröffentlichen. Das Internet rockt!
Meetamit
1
Ich hatte gestern genau diesen Fehler und habe den Knoten heute (1. Oktober) neu installiert und er funktioniert wieder - er scheint in Version 0.10.20 behoben zu sein. Danke für diesen Thread, hat mir viel Zeit gespart.
Dirkk0
39

Versuchen

sudo npm cache clean --force
SanS
quelle
28

Versuchen Sie, Ihren npm-Cache zu leeren:

sudo npm cache clean --force
Appsol Zone
quelle
23

Haben Sie eine bestimmte Version "npm"angegeben unter "engines"in Ihrem package.json? Klingt so, als hätte NPM v1.2.15 das Problem behoben (und Heroku ist verfügbar). Ich hatte das gleiche Problem mit "1.1.x".

Aidan Feldman
quelle
Fantastisch. Das nervte mich sicher. Ich habe meine npm-Version angegeben und es hat wie ein Zauber funktioniert.
Eric H.
20
WENN SIE NIE IN AUSTIN, TX SIND, LASSEN SIE MICH BITTE EINE PIZZA KAUFEN! Es tut mir leid für alle Kappen, aber es fängt meinen aktuellen Freudenzustand als Ergebnis Ihrer Antwort ein. Ich hätte nie gedacht, dass diese Versionsspezifikation für NPM der Schuldige ist. Aidan, ich hoffe du hast einen wunderschönen Tag.
Juanpaco
1
@ Juanpaco, du bist zu lustig.
Daniel
Ja, ich entferne dieses "Motoren" -Blatt von package.json und es funktioniert :)
Kamil Kiełczewski
23

WICHTIG! Die folgende Lösung wird jetzt als instabil angesehen, und Sie sollten stattdessen die Knotenversionsverwaltung verwenden: Knotenversionsmanager auf Github . David Walsh hat auch eine gute Einführung in NVM . NVM funktioniert wunderbar und ich verwende es seit einigen Jahren, um ältere WordPress-Projekte zu verwalten.


Bitte verwenden Sie dies nicht - verwenden Sie NVM

Ich hatte gerade genau dieses Problem, als ich versuchte, das Sage-Theme für WordPress zu installieren. Als ich npm installdas Themenverzeichnis ausführte, schlug es fehl.

Wenn package.jsonich mir die Abhängigkeiten in anschaue , kann ich feststellen, dass die Engine, die ich für Node ausgeführt habe, veraltet ist. Das Ausführen node -vüber die Befehlszeile zeigte, dass ich auf Version 0.10.9 war und die neueste Version von Sage> = 0.12.0 erfordert

Hier ist die Lösung dafür. Diese Schritte stammen aus David Walshs Blog

  1. Leeren Sie Ihren npm-Cache: sudo npm cache clean -f
  2. Installieren Sie die neueste Version des Node-Hilfsprogramms: sudo npm install -g n
  3. Weisen Sie den Helfer (n) an, die neueste stabile Version von Node zu installieren: sudo n stable

Sie sollten dann eine Fortschrittsanzeige erhalten, nach der Sie auf dem neuesten Stand sind.

Als ich danach lief npm install, funktionierte alles einwandfrei und ich konnte gulpdas ursprüngliche distVerzeichnis erstellen .

Raffjones
quelle
Schritt 2 sollte sudo npm install -g nauch sein.
Mauro Vanetti
Laut Ihrem Quelllink ist diese Lösung "instabil" und Node Version Manager ist besser github.com/nvm-sh/nvm/blob/master/README.md
PJ Brunet
Vielen Dank für das Heads-up - ich werde den Beitrag entsprechend aktualisieren
Raffjones
14
  • Lauf npm install -g npm
  • Dann renne npm install
Lösungsgeist
quelle
13

Wenn Sie Angular Cli, Npm, Node aktualisiert haben, müssen Sie nichts weiter tun. Führen Sie einfach den folgenden Befehl aus, um das Problem zu beheben. Dieser Befehl behebt auch das Problem des "unerwarteten Zeilenende".

npm install --no-package-lock
Chetan Shah
quelle
Führen Sie diesen Befehl in demselben Arbeitsbereich aus, in dem Sie arbeiten.
Chetan Shah
11

Aktualisieren des NodeJS https://nodejs.org/en/ Mein Problem wurde behoben .

Führen Sie npm install -g npm& ausnpm cache clean

Srinivas
quelle
Ja. Eigentlich hat es bei mir so geklappt. Zuerst habe ich meinen Knoten aktualisiert und die Befehle ausgeführt, die funktioniert haben. Kann eine andere Möglichkeit sein, es zum Laufen zu bringen. Hoffe es hilft jemandem.
Srinivas
1
Vielen Dank :) Dies sollte die akzeptierte Antwort sein
Solution Spirit
9

Ich hatte das gleiche Problem bei der Installation ionic@beta. Ich habe die folgenden Gegenstände ausprobiert und sie haben mir nicht geholfen.

  1. npm cache clean
  2. Cache manuell löschen aus %temp%\npm-*
  3. Eingabeaufforderung "Als Administrator ausführen"

Ich habe das Problem durch die Installation von node-v5.10.1-x64.msi (frühere Version war node-v5.9.0-x64.msi) gelöst und npm cache cleanvor der Installation eine ausgeführtionic@beta

Es funktionierte!

Sen Jacob
quelle
2
Das hat bei mir funktioniert, danke! Muss mit 5.9.x etwas falsch sein.
Nick George
Bei der Installation des Knotens wurde möglicherweise eine neue npm installiert, was die Ursache dafür sein kann, dass dies als Fix funktioniert.
Mikemaccana
8

Ich hatte das gleiche Problem mit NPM Version 1.3.11 und löste es einfach, indem ich genau denselben Befehl mehrmals ausführte (in meinem Fall "npm update -g"). Der Fehler trat bei jedem nachfolgenden Lauf für ein anderes Paket auf und schließlich wurde alles erfolgreich aktualisiert.

Zumindest für mich scheint es, dass es durch ein Netzwerkproblem (beschädigte Downloads) verursacht wurde. Ich habe auch einen Fehler bezüglich eines ungültigen Pakets erhalten, den ich durch Löschen aller Instanzen von "tmp.tgz" beheben konnte.

Bearbeiten: (Wahrscheinlich nicht verwandt, aber falls dies jemandem hilft: Ich habe Windows verwendet und nach Erhalt des ersten Fehlers eine Eingabeaufforderung als Administrator gestartet.)

Sven Viking
quelle
1
Seit ich dies gepostet habe, haben viele Leute gesagt, dass sie unter Unix und Mac die gleiche Erfahrung gemacht haben (mehrere Versuche umgehen das Problem schließlich). Ich weiß nicht, ob das Problem mit dem Netzwerk zusammenhängt oder nicht, aber es scheint weit verbreitet zu sein.
Sven Viking
Anscheinend ist dieser Fehler jetzt in v0.10.20 behoben: blog.nodejs.org/2013/09/30/node-v0-10-20-stable
Sven Viking
8

Für mich hat keine der oben genannten Lösungen funktioniert (Neuinstallation, Löschen des Cache, Ordner usw.).

Mein Problem wurde gelöst mit:

npm config set registry https://registry.npmjs.org/
Bubiec
quelle
5

sudo npm cache cleanhat für mich nicht geklappt. Das Update auf die neueste Version von Node hilft.

Ich hatte den Knoten v.5.91 und wurde auf v6.9.1 aktualisiert

h - n
quelle
1
Es scheint ein wiederkehrendes Problem zu sein. Ich hatte das gleiche Problem mit 10.15.0 und 11.6.0 und musste 9.11.2 downgraden. Es hat funktioniert.
CsBalazsHungary
5

Für mich auf npm 6.4.0und node hat 10.9.0keine der Antworten funktioniert. Neu installierter Knoten, npm, bereinigter Cache, entfernte Ordner ...

Nach einigem Debuggen stellte sich heraus, dass ich npm linkzwei meiner in der Entwicklung befindlichen Module miteinander verknüpft habe. Nachdem ich einige Links entfernt und überarbeitet hatte, konnte ich alles wieder zum Laufen bringen.

Flion
quelle
4

Es scheint, dass bestimmte Abhängigkeitsversionen dieses Problem verursachen können. Zum Beispiel hat gulp-uglifycss 1.0.7 dieses Problem (siehe https://github.com/rezzza/gulp-uglifycss/issues/15 ).

Wenn Sie Haupt- oder Nebenversionsaktualisierungen in Ihrem packages.jsonVia ^oder ~zulassen, entfernen Sie diese Zeichen in der gesamten Datei und versuchen Sie es mit einem anderen npm install. Wenn es diesmal funktioniert, sind Sie in Ordnung, nachdem Sie den Spaß haben, einzugrenzen, welches Paket das Problem verursacht.

Robert Johnson
quelle
4

Ich habe gerade global die neueste Version von NPM installiert und es hat bei mir funktioniert. Ich denke, das Löschen des npm-Cache ist optional.

npm install -g npm
Akash Tantri
quelle
3

Ich hatte das gleiche Problem beim Versuch, Firebase-Tools in meinem Windows-Laptop zu installieren. So habe ich es gelöst.

  1. Ich habe kaspersky heruntergeladen und installiert. dann habe ich kaspersky sichere verbindungen deaktiviert
  2. Ich öffnete cmd und führte diesen Befehl aus npm cache clean --force
  3. Ich führe dann diesen Befehl aus npm install npm@latest -g
  4. Ich führe dann den Befehl firebase cli aus npm install -g firebase-tools
Benja
quelle
in diesem Befehl npm cache clean --force --force half beim Reinigen des Cache
WasiF
@Benja - Kaspersky ist ein Antivirenprogramm und hat nichts mit Ihrer Installation oder Problemen mit NPM zu tun. Wenn Sie Probleme damit haben, kann es maximal für Proxy-Einstellungen oder aus einem der hier genannten Gründe sein
Ritumoni Sharma
3

Ich schlage vor: Wechseln Sie zu Garn! - Yarn ist ein Paketmanager, der dieselbe package.jsonDatei und denselben node_modulesOrdner wie npm verwendet.

Mit npm hatte ich das gleiche Problem: Bei einer CentOS 6-Installation trat der ERR cb() never calledFehler wiederholt auf und ich konnte keine Möglichkeit finden, die Installation einiger Pakete (wie zum Beispiel) durch npm zuverlässig abzuschließen webpack. - Garn funktioniert auch bei flockigen Netzwerkverbindungen einwandfrei.

Die Migration zu Garn ist einfach. Die meisten Unterbefehle sind gleich. Sie haben einen guten Migrationsleitfaden . Lesen Sie am Ende den praktischen Vergleich der CLI-Befehle .

Halloleo
quelle
Ich hatte oft Probleme mit npm installeinem Docker-Container (normalerweise auf einem Ubuntu-Host). yarn installhat mich in zwei verschiedenen Projekten entsperrt, wenn npm installes fehlgeschlagen ist! Ich wünschte, ich könnte wissen warum, aber ...
Jamie Birch
Ja, ich kann bestätigen, dass ich keine Probleme mit Garn hatte. Leider ist npm heutzutage ein Mist. Die Generierung von Paketsperrdateien ist in einigen zufälligen Momenten unterbrochen. In Garn passiert so etwas nicht. Die Datei yarn.lock ist immer in Ordnung
Nickon
3

Für Ubuntu-Benutzer hat die unten angegebene Methode für mich funktioniert.

Führen Sie zunächst Folgendes aus: sudo npm cache verify

Gehen Sie dann zu Home ->. Npm und löschen Sie den Ordner _cache durch: sudo rm -rf _cacache/

Geh und überprüfe, vielleicht hast du die Lösung gefunden.

Jaymeen_JK
quelle
3

AKTUALISIERT: Das Problem ist ziemlich häufig. Hier ist der neue Fixlauf npm cache verify, den Sie sofort starten können!

James Christian Kaguo
quelle
2

Wenn Sie dort weitermachen, wo mdp übrig ist, liegt das Problem bei Knoten 0.10.19 und npm 1.3.11

Ich habe den einfachsten Weg gefunden, das Downgrade so zu verwalten, dass es reibungslos läuft, um NVM zu werden. Hier ist ein nettes Tutorial zur Verwendung. Ich hatte meine Serverumgebung geändert und lief mit NVM in wenigen Minuten von 0.10.19 auf 0.10.18.

Joe Minichino
quelle
NVM ist sehr nützlich. Ich hatte so viele Probleme mit Versionskonflikten und diese wurden nur durch die Installation und Verwendung von NVM behoben. Es ist toll! Vielen Dank.
Ken J
2

Ich habe auf meinem Mac das gleiche Problem festgestellt und alle Methoden ausprobiert, die ich finden kann: Upgrade auf den neuesten Knoten, Bereinigen des Cache, Entfernen des Verzeichnisses _node_mudules_, aber alle haben keine Auswirkungen. Schließlich glaubte ich, es sei das Problem der Knotenumgebung, und verschlechterte meinen Knoten auf eine alte LTS-Version 6.14.1. Dann verschwand das Problem. Das ist was ich mache:

  1. Installieren Sie NVM (Um einen brandneuen isolierten Knoten Umgebung zu erhalten, sollten Sie besser NVM verwenden Ihre mehrere Knoten Umgebungen zu verwalten, gehen Sie zu hier für weitere Details)

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

  2. Installieren Sie Node.js 6.14.1

    nvm install 6.14.1

  3. Wechseln Sie zu der oben installierten Knotenumgebung

    nvm use 6.14.1

  4. Installieren Sie die Create-React-App

    npm install -g create-react-app

  5. Erstellen Sie Ihre Reaktions-App

    create-react-app appname

lengxuehx
quelle
2

npm install würde führen zu:

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>

In meinem Fall trat dieser Fehler auf, als ich auf die Version von Node.js aktualisierte 8.11.1. Zuvor mit Node.js-Version 6.12.xund NPM-Version 5.8.0.

Außerdem würden meine Testskripte AVA nicht finden:

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

Die Lösung bestand darin, NPM auf herunterzustufen 5.7.1

rafaCode
quelle
2

[Works] versuchen Sie npm config https-Proxy zu löschen

es hätte mit Proxy in Konflikt geraten.

KrtkNyk
quelle
Du bist ein Lebensretter. Vielen Dank
amit gupta
2

Für alle, die kürzlich ein Upgrade von 6.x auf 6.7.0 durchgeführt haben.

Das Löschen des /Users/{YOUR USERNAME}/.npmOrdners löste meine Probleme mit npm install.

Ich habe auch einige dieser von https://npm.community/t/crash-npm-err-cb-never-called/858/93?u=jasonfoglia vorgeschlagenen Befehle ausgeführt

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

Aber ich bin mir nicht sicher, was tatsächlich funktioniert hat, bis ich den Ordner gelöscht habe. Wenn dieses Problem auftritt und Sie einfach den Ordner .npm löschen, der Ihr Problem behebt, beachten Sie dies bitte in den Kommentaren.

Jason Foglia
quelle
2

Auch ich hatte heute das gleiche Problem, als ich den Download des npm-Pakets zwischendurch aufgrund von Internetproblemen zwangsweise stoppte.

Ich habe verschiedene Dinge ausprobiert wie:

  1. Ausführen von sudo npm cache clean -f - was nicht wie erwartet funktioniert hat
  2. Reinigen Sie den Deinstallationsknoten und installieren Sie ihn erneut - was ebenfalls nicht funktioniert hat

Ich habe schließlich versucht, den Ordner zu löschen, der den npm-Cache enthält, der das Problem verursacht hat. Ich habe den folgenden Befehl ausgeführt:

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

Dann habe ich versucht, das Paket zu installieren, das feststeckte, und alles funktionierte wie ein Zauber.

PS: Ersetzen Sie {user_sytem_user} entsprechend dem aktuellen Benutzer Ihres Systems.

Sulokit
quelle
Ich denke, mit den neuesten npm-Versionen ist Ihre Lösung die einzige, die funktioniert.
Jorge Valvert
2

Ich hatte den cb() never called!Fehler und keine der Antworten hier hat direkt für mich funktioniert. Ich habe Node ausgeführt v8.11.2und musste die package-lock.jsonDatei manuell löschen , um irgendwohin zu gelangen. Danach lief ich nach npm cache verifyeinigen der empfohlenen Antworten. Dann npm iergab das Laufen das folgende Ergebnis:

npm notice created a lockfile as package-lock.json. You should commit this file.
npm WARN securities-stub@1.0.0 No description
npm WARN securities-stub@1.0.0 No repository field.

up to date in 5.118s
Tim Biegeleisen
quelle
1
brew uninstall node
cd /usr/local
git checkout f7bbdcc /usr/local/Library/Formula/node.rb
brew install node

Finden Sie andere Versionen wie folgt:

brew versions node
Alex V.
quelle
1

Haben npm install npm@latest -gnpm auf die neueste Version zu aktualisieren. Dies hat das Problem für mich behoben. Ich habe es npm cache cleanzuerst getan

Sukhdeep Singh
quelle
1

In meinem Fall konnte ich kein VueJS-Plugin installieren und musste:

Ändern des Eigentums an Dateien:

sudo chown -R $ (whoami) ~ / .npm

sudo chown -R $ (whoami) / usr / local / lib

sudo chown -R $ (whoami) / usr / local / bin

Und dann stellen Sie sicher, dass Sie die neuesten npm haben:

npm install -g npm @ spätestens

Dann habe ich mein Plugin installiert und in deinem Fall ist dein Befehl wahrscheinlich nicht richtig.

FBC
quelle