2009-05-19 14 views
37

Esiste un modo per impostare la dimensione heap predefinita per jvm sul mio computer? Voglio impostarlo su 1g, perché eseguo sempre programmi personalizzati che raggiungono sempre il punto di eccedenza nella dimensione predefinita di jvm.aumenta la dimensione dell'heap java in modo permanente?

Ho appena non voglio avere a ricordarsi di digitare -XmX1g ogni volta che corro la mia applicazione Java dalla riga di comando ...

Ci deve essere un modo admin per fare questo diritto?

+0

nota, gli ultimi Java 6 uscite da Sun hanno aumentato i limiti di heap standard. –

risposta

3

quale piattaforma si sono in esecuzione? ..
se unix, forse aggiungendo

alias java='java -XmX1g' 

a .bashrc (o simile) lavorare

19

Per gli utenti di Windows, è possibile aggiungere una variabile di ambiente di sistema chiamato _JAVA_OPTIONS e imposta lì i valori della dimensione dell'heap. La JVM dovrebbe essere in grado di afferrare le opzioni della macchina virtuale da _JAVA_OPTIONS.

+0

La soluzione Windows può essere raggiunta [qui] (http://stackoverflow.com/a/17369724/1635051). –

48

A quanto pare, _JAVA_OPTIONS lavori su Linux, anche:

$ export _JAVA_OPTIONS="-Xmx1g" 
$ java -jar jconsole.jar & 
Picked up _JAVA_OPTIONS: -Xmx1g 
+1

Grazie per questo! –

+0

Suggerirei di sostituire ">" con "$" come il terminale del terminale di Linux termina con $. All'inizio mi sono confuso dalla tua risposta in quanto assomiglia a una struttura simile a un sub-cli all'interno del terminale. (ad esempio mysql) ... che evidentemente ha un prompt di '>'. Grazie per la tua risposta (che, a mio avviso, dovrebbe essere la risposta approvata) ... le dita incrociate che il mio script di lunga durata non fallisce dopo 3 ore, ha cambiato la dimensione dell'heap java da 500mb a 2gb! Inoltre, non ero sicuro se la terza riga "Picked ..." fosse parte della 2 ° linea .. quindi ho provato entrambi. (se questo è solo un output ... suggerire il prefisso di 'Output:'. :) –

+0

Grazie @ josh.thomson, ho aggiornato la risposta con il tuo suggerimento – Kutzi

6

questo ha funzionato per me:

export _JAVA_OPTIONS="-Xmx1g" 

E 'importante che si dispone di spazi perchè per me non ha funzionato. Suggerirei semplicemente di copiare e incollare. Poi mi sono imbattuto:

java -XshowSettings:vm 

e vi dirà:

raccolse _JAVA_OPTIONS: -Xmx1g

Problemi correlati