Eclipse - java.lang.OutOfMemoryError: Java-Heap-Speicherplatz

Eclipse - java.lang.OutOfMemoryError: Java-Heapspeicher

In der Eclipse-IDE, wenn Ihr Programm viel Speicher verbraucht (Laden großer Datenmengen), gehen Sie wie folgt vor:

  List list = domainBo.findAllDomain(100000);

  for(Domain domain : list){
    process(domain.getDomainName());
  }

Es kann leichtjava.lang.OutOfMemoryError: Java heap space treffen:

Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
    at java.util.HashMap.(HashMap.java:209)
    at java.util.LinkedHashMap.(LinkedHashMap.java:181)

1. Lösung - VM-Argumente

Klicken Sie im Eclipse-Menü aufRun -> Run Configurations.., wählen Sie die Java-Anwendung aus, die Sie ausführen möchten, klicken Sie auf die RegisterkarteArguments und aktualisieren Sie die VM-Argumente mit den folgenden Optionen

-Xms - Set initial Java heap size
-Xmx - Set maximum Java heap size

Zum Beispiel-Xms512M -Xmx1024M

eclipse-out-of-memory

2. Fehler - eclipse.ini

Die Speichereinstellungen ineclipse.ini werden nur der Eclipse-IDE zugewiesen, nicht dem Programm, das Sie ausführen möchten. Ein sehr häufiger Fehler ist die Aktualisierung der Heap-Größe ineclipse.ini und erwartet, dass das oben genannte Problem mit zu wenig Speicher behoben wird.

Note
Die Java-Anwendung, Ant / Maven-Build-Skripte oder Unit-Testfälle werden als externes Tool von Eclipse ausgeführt und erben die VM-Einstellungen in eclipse.ini nicht.

Wenn Ihre Eclipse-IDE jedoch immer ohne Grund abstürzt, können Sie versuchen, die Heap-Größe und die Dauer ineclipse.ini zu erhöhen.

/Users/example/Downloads/eclipse/Eclipse.app/Contents/MacOS/eclipse.ini

    -startu
    openFile
    -showsplash
        //...
    -XX:MaxPermSize=512m
    -Xms512m
    -Xmx1024m
        //...
    -Xdock:icon=../Resources/Eclipse.icns
    -XstartOnFirstThread

P.S eclipse.ini is located in the Eclipse installation folder.