Abarone.it Logo

Java - Eccezione Memoria

java.lang.OutOfMemoryError: Java heap space

In questo Articolo breve, voglio illustrare come fare a risolvere un problema, che mi è capitato più volte lavorando con grandi mole di dati,
Nel mio caso ho lavorato con file excel di 7MB circa, composti da 80000 righe.
Le operazioni da fare tenevano in considerazioni più files excel da unire in un unico file.
Nel fare queste operazioni, ahimè inesorabile nell'output ( e preciso proprio durante l'ultima operazione di scrittura ) mi veniva
restituito l'errore:

  1. Exception in thread "AWT-EventQueue-0" java.lang.OutOfMemoryError: Java heap space

Ma di cosa si tratta e come risolverlo?

Java

Si tratta di eccezione sollevata dalla JVM che non riesce ad allocare tutta la memoria che le serve per portare a buon fine le operazioni.

Questo perché la JVM di default occupa una definita memoria di heap. Per modificare questo paramentro e quindi permettere alla JVM di utilizzare più memoria
ho cliccato col tasto destro del mouse sul progetto e quindi su proprietà. L'IDE da me utilizzato è Netbeans.
Fatto ciò , si aprire una nuova finestra con varie impostazioni. Per risolvere quest'eccezione sollevata dalla Java Virtual Machine
bisogna cliccare sulla categoria "Esegui" e qui quindi andremo a modificare le "Opzioni VM" inserendo la stringa :

  1. -Xms4096m

Si noti che 4096m è la memoria da me assegnata alla JVM , e corrisponde a 4GB di memoria RAM.
Questo parametro può essere modificato a piacimento

barone.antonio@libero.it