npm · npm
Die Meldung
npm ERR! Invalid Version:
Was es bedeutet
Das Feld version in package.json ist kein gültiges Semver, daher kann npm das Paket überhaupt nicht einlesen. Das passiert bei einem handgeschriebenen Wert wie 1.0 oder v1.0.0 oder einer leeren Zeichenkette, besonders nach einem schlecht gelösten Konflikt in dieser Datei. npm pkg set version=1.0.0 schreibt eine korrekte dreiteilige Version zurück. Der Befehl bearbeitet nur package.json und rührt weder node_modules noch das Lockfile an, sodass danach jeder Befehl, der die Datei liest, sofort wieder funktioniert.
Die Lösung
npm pkg set version=1.0.0- 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! Invalid Version:“?
Das Feld version in package.json ist kein gültiges Semver, daher kann npm das Paket überhaupt nicht einlesen. Das passiert bei einem handgeschriebenen Wert wie 1.0 oder v1.0.0 oder einer leeren Zeichenkette, besonders nach einem schlecht gelösten Konflikt in dieser Datei. npm pkg set version=1.0.0 schreibt eine korrekte dreiteilige Version zurück. Der Befehl bearbeitet nur package.json und rührt weder node_modules noch das Lockfile an, sodass danach jeder Befehl, der die Datei liest, sofort wieder funktioniert.
Q. Wie behebe ich das?
npm pkg set version=1.0.0 — 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 4 Wörter.