Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno java.lang.OutOfMemoryError: Java heap space - rada

Dobrý den,

dělám v javě školní projekt.. Jsem si vědom toho, že program je složitý a žere paměť...

Při spuštění dostávám exception... Nevím co s tím, dočetl jsem se na netu že je to problém malé paměti virtuálního stroje a že paměť jde prý zvýšit.

Píši v eclipse, na pc mám ram 4giga.

Jedna možnost je přepsat v souboru eclipse.ini

-Xms40m
-Xmx512m

Ale ať tam napíšu cokoli(reálného) tak to nefunguje. Mohl by mi někdo poradit, případně říct víc?

Díky

(při spuštění programu je celková paměť pc na 52% (běží mi ostatní aplikace), win 8, 64b, i5)

Exception in thread "AWT-EventQueue-0" java.lang.OutOfMemoryError: Java heap space
	at java.awt.image.DataBufferInt.<init>(Unknown Source)
	at java.awt.image.Raster.createPackedRaster(Unknown Source)
	at java.awt.image.DirectColorModel.createCompatibleWritableRaster(Unknown Source)
	at java.awt.image.BufferedImage.<init>(Unknown Source)
	at GUI.Mapa.createImage(Mapa.java:63)
	at GUI.Mapa.paint(Mapa.java:140)
	at javax.swing.JComponent.paintChildren(Unknown Source)
	at javax.swing.JComponent.paint(Unknown Source)
	at javax.swing.JComponent.paintChildren(Unknown Source)
	at javax.swing.JComponent.paint(Unknown Source)
	at javax.swing.JComponent.paintChildren(Unknown Source)
	at javax.swing.JComponent.paint(Unknown Source)
	at javax.swing.JComponent.paintChildren(Unknown Source)
	at javax.swing.JComponent.paint(Unknown Source)
	at javax.swing.JLayeredPane.paint(Unknown Source)
	at javax.swing.JComponent.paintChildren(Unknown Source)
	at javax.swing.JComponent.paintToOffscreen(Unknown Source)
	at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(Unknown Source)
	at javax.swing.RepaintManager$PaintManager.paint(Unknown Source)
	at javax.swing.RepaintManager.paint(Unknown Source)
	at javax.swing.JComponent.paint(Unknown Source)
	at java.awt.GraphicsCallback$PaintCallback.run(Unknown Source)
	at sun.awt.SunGraphicsCallback.runOneComponent(Unknown Source)
	at sun.awt.SunGraphicsCallback.runComponents(Unknown Source)
	at java.awt.Container.paint(Unknown Source)
	at java.awt.Window.paint(Unknown Source)
	at javax.swing.RepaintManager$3.run(Unknown Source)
	at javax.swing.RepaintManager$3.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
	at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
	at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
Předmět Autor Datum
Hodnoty v eclipse.ini sa pouziji len pre JVM v ktorom bezi eclipse. Ked si z eclipse spustas svoju…
emem 02.11.2013 10:37
emem
To jsem dělal, dokonce jsem tam cpal i větší hodnoty a pořád stejné. Vyřešil jsem to změnou na NETB… poslední
MašinkaTomáš 02.11.2013 17:02
MašinkaTomáš

Hodnoty v eclipse.ini sa pouziji len pre JVM v ktorom bezi eclipse.

Ked si z eclipse spustas svoju aplikaciu, vytvori sa nova virtualna masina.
Jej parametre mozes nastavit v lauch konfiguraci (Run/Debug), v druhej zalozke
Arguments v policku VM Arguments. Tam daj -Xmx512m.

Zpět do poradny Odpovědět na původní otázku Nahoru