Ich habe den unteren Fehler
%Vor% In meiner catalina.bat
-Datei, wo ist der geeignete Platz für den Parameter set JAVA_OPTS
? Unten in der Datei oder an einem anderen Ort?
Bitte lesen Sie Folgendes: OutOfMemory-Fehler und stellen Sie sicher, dass Ihre Anwendung keinen Speicher hat Leck und übermäßiger Speicherverbrauch.
Um die Einstellungen zu ändern, erstellen Sie eine Datei namens setenv.bat
für Windows oder setenv.sh
für Linux mit folgendem Eintrag:
Windows:
%Vor%Linux:
%Vor% Fügen Sie diese Datei (setenv.bat / setenv.sh) einfach in den Ordner %CATALINA_HOME%\bin\
ein. Ihre Befehlsdatei ( catalina.bat/catalina.sh
) hat bereits eine Anweisung wie folgt:
Windows:
%Vor%Linux:
%Vor%Dies wird den Rest kümmern.
Der richtige Ort ist, eine neue Datei im Tomcat / bin-Verzeichnis neben catalina.bat mit dem Namen setenv.bat
zu erstellen und dort ein set JAVA_OPTS=...
zu platzieren.
Ein * nix-System wäre setenv.sh
catalina.bat / catalina.sh kümmert sich um das Ausführen von setenv.bat / setenv.sh, falls es existiert. Dies ist im Abschnitt 3.4 hier
vermerkt Wie andere bereits vorgeschlagen haben, müssen Sie JAVA_OPTS
auf Folgendes setzen:
%Code%. Dies allein wird wahrscheinlich die Probleme lösen, aber wenn Sie viele Male neu verteilen und Ihr War / Jar groß ist, werden Sie auch dieses Speicherlimit erreichen.
Für dieses letzte Szenario, etwas normales auf einem Test / devel Maschinen, empfehle ich:
JAVA_OPTS="-XX:MaxPermSize=98m"
Diese Option ermöglicht das Entladen der nicht verwendeten Klassen.
Schauen Sie hier weitere Einzelheiten, insbesondere die Kommentare.