Start·Fehlermeldungen

npm · npm

Die Meldung

npm ERR! enoent ENOENT: no such file or directory, open '/home/me/package.json'

Was es bedeutet

npm hat im aktuellen Verzeichnis und darüber nach package.json gesucht und keine gefunden — Sie haben einen npm-Befehl an einer Stelle ausgeführt, die kein Projekt ist. Das passiert, wenn Sie in der Wurzel eines Monorepos stehen, während das Projekt in einem Unterordner liegt, wenn Sie neben dem geklonten Ordner stehen, oder wenn Sie einfach das cd vergessen haben. Die Antwort ist, in den Ordner mit package.json zu wechseln, und ein ls zeigt es am schnellsten. Verwenden Sie npm init -y nur, wenn Sie hier wirklich ein neues Projekt beginnen wollen: im falschen Ordner hinterlässt es eine verwaiste package.json, die später Werkzeuge verwirrt.

Die Lösung

npm init -y
Ausgegeben von
npm
npm
20

Bei npm steht die Ursache in der ersten code-XXXX-Zeile und nicht in den letzten sechs npm-ERR!-Zeilen, und wenn der Fehler aus dem Abhängigkeitsbaum oder einem Native-Build statt aus eigenem Code kommt, löst das Löschen von node_modules mit erneuter Installation etwa die Hälfte.

Eine Fehlermeldung lesen

  • Von der ersten Zeile abwärts lesen. Weiter unten geht es um das Innere des Werkzeugs; die Ursache steht meist oben.
  • Gibt es Datei und Zeilennummer, dort anfangen — nicht der oberste Stack-Frame, sondern die oberste Zeile, die eine eigene Datei nennt.
  • Die Meldung wörtlich suchen, vorher aber eigene Pfade und Variablennamen entfernen; genau die verhindern den Treffer.
  • Dieselbe Lage wird je Werkzeugversion anders formuliert. Passen die Treffer nicht, die Versionsnummer mit in die Suche.
  • Vor dem Einfügen einer Lösung prüfen, was sie verwirft. Manches davon lässt sich nicht zurückholen.

Häufige Fragen

Q. Was bedeutet „npm ERR! enoent ENOENT: no such file or directory, open '/home/me/package.json'“?

npm hat im aktuellen Verzeichnis und darüber nach package.json gesucht und keine gefunden — Sie haben einen npm-Befehl an einer Stelle ausgeführt, die kein Projekt ist. Das passiert, wenn Sie in der Wurzel eines Monorepos stehen, während das Projekt in einem Unterordner liegt, wenn Sie neben dem geklonten Ordner stehen, oder wenn Sie einfach das cd vergessen haben. Die Antwort ist, in den Ordner mit package.json zu wechseln, und ein ls zeigt es am schnellsten. Verwenden Sie npm init -y nur, wenn Sie hier wirklich ein neues Projekt beginnen wollen: im falschen Ordner hinterlässt es eine verwaiste package.json, die später Werkzeuge verwirrt.

Q. Wie behebe ich das?

npm init -y — vor dem Ausführen oben prüfen, was dieser Befehl verwirft.

Q. Welches Werkzeug gibt das aus?

npm. Es gehört zu npm, und die Meldung hat 11 Wörter.

Verwandte Fehler