quelle
Für eine nicht eckige allgemeine Antwort für diejenigen, die auf dieser Frage von Google landen:
Jedes Mal, wenn Sie auf diesen Fehler stoßen, liegt dies wahrscheinlich an einem Speicherverlust oder einem Unterschied zwischen der Verwaltung des Speichers durch Knoten <= 10 und Knoten> 10. Normalerweise kann Ihr Programm nur durch Erhöhen des dem Knoten zugewiesenen Speichers ausgeführt werden, löst jedoch möglicherweise nicht das eigentliche Problem, und der vom Knotenprozess verwendete Speicher kann den von Ihnen zugewiesenen neuen Speicher immer noch überschreiten. Ich würde empfehlen, die Speichernutzung in Ihrem Knotenprozess zu profilieren, wenn er ausgeführt wird oder auf Knoten> 10 aktualisiert wird.
Ich hatte ein Speicherleck. Hier ist ein großartiger Artikel zum Debuggen von Speicherlecks im Knoten.
Um den Speicher in dem Terminal zu vergrößern, in dem Sie Ihren Knotenprozess ausführen:
export NODE_OPTIONS="--max-old-space-size=8192"
wo Werte von sein max-old-space-size
können: [2048, 4096, 8192, 16384]
etc.
[UPDATE] Weitere Beispiele für weitere Klarheit:
export NODE_OPTIONS="--max-old-space-size=5120" #increase to 5gb
export NODE_OPTIONS="--max-old-space-size=6144" #increase to 6gb
export NODE_OPTIONS="--max-old-space-size=7168" #increase to 7gb
export NODE_OPTIONS="--max-old-space-size=8192" #increase to 8gb
# and so on...
# formula:
export NODE_OPTIONS="--max-old-space-size=(X * 1024)" #increase to Xgb
# Note: it doesn't have to be multiples of 1024.
# max-old-space-size can be any number of memory megabytes(MB) you have available.
next.js
begann unsere App mit der Schnellaktualisierungsfunktion zum Absturz zu bringen.Beheben Sie in meinem Fall dieses Problem bei der Installation von NodeJs, Version 12.10.0
quelle
das gleiche Problem auf Centos Server 7, aber dies löste mein Problem:
Wo
X = (2048 or 4096 or 8192 o..)
ist der Wert des Gedächtnisses?quelle
ng serve
und eine massive .js-Datei, auf die imscripts
Abschnitt verwiesen wird, musste in denangular.json
Speicher geladen werden.Probieren Sie diese Lösung aus, auf die in einer alten Nachricht im Forum hingewiesen wurde: https://forum.ionicframework.com/t/3-7-0-ios-build-with-prod-not-working/107061/24
Öffnen
node_modules/@ionic/app-scripts/bin/ionic-app-scripts.js
Ändern Sie die erste Zeile von:
#!/usr/bin/env node
zu
#!/usr/bin/env node --max-old-space-size=4096
Probieren Sie die Werte 1024 und 2048 aus, aber für eine relativ große App benötigen Sie möglicherweise 4096.
quelle
Ich habe den gleichen Fehler erhalten, wenn ich einen
ng build
Befehl in Visual Studio-Code ausführe . Ich kann jedoch erfolgreich erstellen, wenn ich dasselbe in der Windows-Befehlszeile in der folgenden Reihenfolge ausführe.Schritt 1.
set NODE_OPTIONS=--max_old_space_size=4096
Schritt 2.
quelle
Ich habe die gleiche Fehlermeldung erhalten, wenn ich die folgenden Anweisungen im Visual Studio-Code ausführe. Aber ich kann erfolgreich erstellen, wenn ich dasselbe in der Windows-Befehlszeile ausführe.
npm install -g increase-memory-limit increase-memory-limit set NODE_OPTIONS=--max_old_space_size=4096 ng build -c deploy --build-optimizer --aot --prod --sourceMap
quelle
node --max_old_space_size=4096 node_modules/@angular/cli/bin/ng build --baseHref=/baseUrl/ --prod=true
quelle
Aus einigen Gründen hat die obige Antwort für mich nicht wirklich funktioniert. Ich habe Folgendes getan, um mein Problem zu beheben:
node_modules
Ordner löschennpm install
quelle
node --max_old_space_size = 4096 ./node_modules/@angular/cli/bin/ng build --prod --build-optimizer
Durch Hinzufügen von Parametern wurde
--build-optimizer
das Problem in meinem Fall behoben.Aktualisieren:
Ich bin nicht sicher, warum nur das Hinzufügen von --build-optimizer das Problem löst, aber gemäß eckigen Dokumenten sollte es mit aktiviertem aot verwendet werden, daher sollte der aktualisierte Befehl wie folgt aussehen
--build-optimizer=true --aot=true
Angular Build-Dokumente
quelle
Führen Sie diesen Befehl in Ihrem Projektordner aus. Verwenden Sie Serve anstelle von Build
node --max_old_space_size=8000 node_modules/@angular/cli/bin/ng serve --prod --port=4202
quelle
Ersetzen Sie die Leitung
"start": "ng serve -o --port 4300 --configuration=en"
mit"start": "node --max_old_space_size=5096 node_modules/@angular/cli/bin/ng serve -o --port 4300 --configuration=en"
HINWEIS:
Port - 4300 ist nicht konstant. Dies hängt davon ab, welchen Port Sie auswählen.
--max_old_space_size = 5096 zu nicht konstant; ein beliebiger Wert 1024,2048,4096 usw.
quelle
In meinem Fall war es eine Rekursion , die dazu führte, dass die Reaktion den gesamten Speicher verbrauchte.
Dies geschah, als ich meinen Code überarbeitete und dies nicht bemerkte.
const SumComponent = () => { return ( <> <SumComponent /> </> ) }
In anderen Knoten-Apps könnte dies folgendermaßen aussehen:
const someFunction = () => { ... someFunction(); ... }
quelle
SumComponent
enthält einenSumComponent
(der einenSumComponent
enthält, der einenSumComponent
... enthält )Für mich war es ein Problem mit dem Firebase-Paket.
Fügen Sie nur "@ firebase / database" hinzu: "0.2.1", installieren Sie für Ihre package.json node_modules neu und funktionieren.
quelle
Ich habe das vorhandene Knotenmodul gelöscht und die folgenden Befehle ausgeführt, um mein Problem zu beheben
quelle
Eine weitere nicht eckige Antwort (ich hatte das gleiche Problem beim Erstellen einer Reaktions-App auf AWS Amplify).
Wie von Emmanuel erwähnt, scheint dies auf den Unterschied in der Art und Weise zurückzuführen zu sein, wie der Speicher von Knoten v10 gegenüber Knoten v12 behandelt wird.
Ich habe erfolglos versucht, das Gedächtnis zu vergrößern. Aber mit Knoten v12 hat es geschafft.
Überprüfen Sie, wie Sie
nvm use $VERSION_NODE_12
Ihre Build-Einstellungen wie unter @atlesp erläutert hier hinzufügen können: https://github.com/aws-amplify/amplify-console/issues/440#issuecomment-602626451quelle
Für mich bestand das Problem darin, einen zusätzlichen
node_modules
Ordner zu haben, in den ich umbenannt habe,node_modules_old
und einen auszuführennpm install
, um einen neuen zu generierennode_modules
. Irgendwie muss der Build dennode_modules_old
Ordner noch aufgenommen haben, also habe ichnode_modules_old
das Verzeichnis verlassen, um das Problem zu beheben.quelle
Bitte überprüfen Sie Ihre Knotenversion:
Wenn es sich um 10.1.1 handelt, müssen Sie die Version Ihres Root-Knotens über die folgenden Befehle aktualisieren
$ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash $ source ~/.nvm/nvm.sh $ nvm ls $ nvm install 12.18.1
Sobald dies erledigt ist, starten Sie bitte Ihr Terminal oder Visual Studio neu.
Es ist Arbeit 100 $
Für ionische Benutzer fügen Sie bitte den folgenden Code in Ihre package.json ein
"ionic:build": "node --max-old-space-size=16384 ./node_modules/@ionic/app-scripts/bin/ionic-app-scripts.js build",
quelle
app-scripts
erstellen, aber wenn Sie Android oder Skriptionic cordova build android
wie bauen?Überprüfen Sie Ihren Ordnernamen. Wenn Ihr Ordnername Leerzeichen enthält, werden diese Probleme generiert. Ohne Leerzeichen umbenennen. hoffe es wird funktionieren
quelle
Wenn dies beim Ausführen der React-Anwendung auf VSCode passiert, überprüfen Sie bitte Ihre propTypes. Undefinierte Proptypes führen zu demselben Problem.
quelle
Bei mir ist dieser Fehler aufgetreten, weil ich den Zugriff auf den Ausgabepfad für den dist-Ordner in meiner Datei angle.json verloren habe. Nachdem ich mich mit aktualisierten Anmeldeinformationen wieder mit dem Remote-Pfad verbunden hatte, verschwand der Fehler.
quelle
#! / usr / bin / env-Knoten --max-old-space-size = 4096 in der Funktion ionic-app-scripts.js
Ändern
node_modules / .bin / ionic-app-scripts.cmd
Beim Hinzufügen:
@IF EXIST "% ~ dp0 \ node.exe" ("% ~ dp0 \ node.exe" "% ~ dp0 .. @ ionic \ app-scripts \ bin \ ionic-app-scripts.js"% *) ELSE ( @SETLOCAL @SET PATHEXT =% PATHEXT:;. JS; =;% node --max_old_space_size = 4096 "% ~ dp0 .. @ ionic \ app-scripts \ bin \ ionic-app-scripts.js"% *)
Arbeitete fianlly
quelle
Für mich stieß ich auf dieses Problem, als ich eslint und Prettier Fix ausführte und mit einem
build
Verzeichnis in meinem React-Projekt formatierte , nachdem ich alles entfernt hatte. Ich denke, das liegt daran, dass es zu viele Dateien gibt.quelle
Ich denke, es gibt viele Möglichkeiten, um diesen Fehler zu erreichen!
Auf meiner Seite hatte ich eine Schleife in meiner
package.json
. Projekt A hatte eine Abhängigkeit von Projekt B, das eine Abhängigkeit von Projekt A hatte.quelle
Manchmal ist Einfachheit der Schlüssel zum Erfolg. Suchen Sie nach,
while (i <= 10000) {}
ohnei
Ihren Code zu erhöhen ;)quelle
Dieses Problem wurde behoben, nachdem ich alle Bibliotheken wie NodeJS, Typoskript, Garn, Npm usw. für mein Projekt aktualisiert habe.
quelle
Geben Sie dies einfach in das Terminal ein:
export NODE_OPTIONS="--max-old-space-size=8192"
quelle
Das Aktualisieren von Knoten 12 auf Knoten 14 hat das Problem für mich gelöst
quelle