Während der Npm-Installation kann die Eigenschaft 'match' von undefined nicht gelesen werden

9

Beim Erstellen von Jenkins ist ein Fehler aufgetreten

Jenkins Log

Aufgabe: api: processResources Aufgabe: api: classes Aufgabe: web: nodeSetup Aufgabe: web: npmSetup /var/lib/jenkins/workspace/hds_v2_docker/web/.gradle/npm/npm-v6.11.2/bin/npm -> / var / lib / jenkins / workspace / hds_v2_docker / web / .gradle / npm / npm-v6.11.2 / lib / knotenmodule / npm / bin / npm-cli.js / var / lib / jenkins / workspace / hds_v2_docker / web /. gradle / npm / npm-v6.11.2 / bin / npx -> /var/lib/jenkins/workspace/hds_v2_docker/web/.gradle/npm/npm-v6.11.2/lib/node_modules/npm/bin/npx-cli .js + [email protected] hat 430 Pakete von 832 Mitwirkenden in 6.837s hinzugefügt. Aufgabe: web: npmInstall FAILED npm ERR! Die Eigenschaft 'match' von undefined kann nicht gelesen werden

npm ERR! Ein vollständiges Protokoll dieses Laufs finden Sie in: npm ERR!
/var/lib/jenkins/.npm/_logs/2019-10-16T01_11_20_594Z-debug.log

FAILURE: Build mit einer Ausnahme fehlgeschlagen.

  • Was schief gelaufen ist: Ausführung für Aufgabe ': web: npmInstall' fehlgeschlagen.

    Der Prozess 'Befehl' /var/lib/jenkins/workspace/hds_v2_docker/web/.gradle/npm/npm-v6.11.2/bin/npm '' wurde mit einem Exit-Wert ungleich Null 1 beendet

  • Versuchen Sie: Führen Sie die Option --stacktrace aus, um den Stack-Trace abzurufen. Führen Sie die Option --info oder --debug aus, um mehr Protokollausgabe zu erhalten. Führen Sie mit --scan aus, um vollständige Einblicke zu erhalten.

  • Weitere Hilfe erhalten Sie unter https://help.gradle.org

In diesem Build wurden veraltete Gradle-Funktionen verwendet, sodass es nicht mit Gradle 6.0 kompatibel ist. Verwenden Sie '--warning-mode all', um die einzelnen Verfallswarnungen anzuzeigen. Siehe https://docs.gradle.org/5.0/userguide/command_line_interface.html#sec:command_line_warnings

Bau in 33s fehlgeschlagen

/var/lib/jenkins/.npm/_logs/2019-10-16T01_11_20_594Z-debug.log

17 alberner saveTree │ ├ [email protected] 17 alberner saveTree │ │ source─- [email protected] 17 alberner saveTree │ commander [email protected] 17 alberner saveTree │ └ he @ 1.2.0 17 dummes saveTree └─┬ [email protected] 17 dummes saveTree ├── [email protected] 17 dummes saveTree ├── [email protected] 17 dummes saveTree └── json5 @ 0.5.1 18 verbose stack TypeError: Die Eigenschaft 'match' des undefinierten 18 verbose stack bei tarballToVersion (/usr/local/lib/node_modules/npm/lib/install/inflate-shrinkwrap.js:87:20) 18 verbose stack kann nicht gelesen werden at inflatableChild (/usr/local/lib/node_modules/npm/lib/install/inflate-shrinkwrap.js:99:22) 18 ausführlicher Stapel bei BB.each (/ usr / local / lib / node_modules / npm / lib / install /inflate-shrinkwrap.js:55:12) 18 ausführlicher Stapel bei tryCatcher (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/util.js:16:23) 18 ausführlicher Stapel bei Object.gotValue (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/reduce.js:155:18) 18 ausführlicher Stapel bei Object.gotAccum (/ usr / local / lib / knotenmodule / npm / knotenmodule / bluebird / js / release / redu.js: 144: 25) 18 ausführlicher Stapel bei Object.tryCatcher (/ usr / local / lib / knotenmodule / npm / knotenmodule / bluebird / js / release / util .js: 16: 23) 18 ausführlicher Stapel bei Promise._settlePromiseFromHandler (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/promise.js:512:31) 18 ausführlicher Stapel bei Promise._settlePromise ( /usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/promise.js:569:18) 18 ausführlicher Stapel bei Promise._settlePromiseCtx (/ usr / local / lib / node_modules / npm / node_modules / bluebird / js / release / versprechen.js: 606:10) 18 ausführlicher Stapel bei _drainQueueStep (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/async.js:142:12) 18 ausführlicher Stapel bei _drainQueue (/ usr / local / lib / node_modules / npm / node_modules / bluebird / js / release / async.js: 131: 9) 18 ausführlicher Stapel bei Async._drainQueues (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/async.js:147) : 5) 18 ausführlicher Stapel bei Immediate.Async.drainQueues (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/async.js:17:14) 18 ausführlicher Stapel bei runCallback (timers.js: 810: 20) 18 ausführlicher Stapel bei tryOnImmediate (timers.js: 768: 5) 19 ausführlicher cwd / var / lib / jenkins / workspace / hds_v2_docker / web 20 ausführlicher Linux 4.4.0-59-generic 21 ausführlicher argv "/ usr / bin / node "" / usr / local / bin / npm "" install "22 verbose node v8.16.0 23 verbose npm v6.9.0 24 Fehler Die Eigenschaft 'match' von undefined 25 verbose exit [1, true] kann nicht gelesen werden.

m2sj
quelle

Antworten:

25

Versuchen Sie, Ihre package-lock.jsonzu entfernen, um zu sehen, ob dies hilft.

rm -rf package-lock.json 
Aditya Prakash
quelle
3
Vielen Dank für Ihre Antwort. Ich habe es bereits versucht, aber ich habe den gleichen Fehler
m2sj
4
Versuchen Sie auch, node_modules zu entfernen. rm -rf node_modules nach dem cd-ing in dein app-verzeichnis.
Aditya Prakash
4
Verwenden Sie den del package-lock.jsonBefehl unter Windows. Schließen Sie auch die Editoren und löschen Sie sie node_modules. Beides ist ein Muss.
Manohar Reddy Poreddy
3

Sie müssen die Projektdatei Package-lock.json entfernen. Versuchen Sie dann zu installieren, was Sie wollen.

Sie finden diese Datei im Hauptprojektverzeichnis

Adnan javte
quelle
4
Nein, sollte es nicht. Dies ist "die empfohlene Problemumgehung", ist aber in der Praxis unglaublich kaputt. Eine gesperrte Abhängigkeit in package.json stellt in keiner Weise sicher, dass die Abhängigkeiten der Abhängigkeit konsistent bleiben. Wenn Sie also die Datei package-lock.json entfernen, npm installieren und eine newlock-Datei * generieren, können sich diese Unterabhängigkeiten ändern, was häufig vollständig ist bricht jedes zukünftige Gebäude. Die Verwendung einer vorhandenen Sperrdatei ist häufig die einzige Möglichkeit, Builds zu verwalten (das ist schließlich der PUNKT der Datei). Das vollständige Entfernen widerspricht dem Grund für ihre Existenz.
DanielM
3

Sie müssen beide package-lock.json und entfernen node_modules/.

Wenn Sie nicht beide entfernen, tritt das Problem beim nächsten Mal wieder auf npm install.

Holger L.
quelle
Dies sollte die akzeptierte Antwort sein. Die Frage ist, warum das passiert?
ACV