JAVA Heapspace erhöhen -Xmx -Xms

Tallan

Bekanntes Mitglied
Hi,
ich würde gerne beim starten meines Programms den Heapspace erhöhen.
Das Programm ist als ausführbare jar Datei kompliert und der Anwender sollte es nicht über die Shell aufrufen.
Gibt es eine möglichkeit die Heapspaceerhöhung in das Programm oder die Jarfile zu integrieren?
Als einzige alternative würde mir eine entsprechende Batch-Datei einfallen.
 
Gibt es eine möglichkeit die Heapspaceerhöhung in das Programm oder die Jarfile zu integrieren?
Mit "Runtime" einen dynamischen Neustart veranlassen und den Heapsize angeben. Beispiel:
Java:
public static void main(final String[] args) {
    long maxMemory = Runtime.getRuntime().maxMemory();
    if (maxMemory < 300000000) {
        String userdir = System.getProperty("user.dir");
        String cmd = "java -Xms300m -Xmx300m -jar \"" + userdir + "\\HeapDemo.jar\"";
        try {
            Runtime.getRuntime().exec(cmd);
        } catch (IOException e) {
            e.printStackTrace();
        }
        System.exit(0);
    }
    JOptionPane.showMessageDialog(null, "Heap " + Runtime.getRuntime().maxMemory());
}
 
Hallo,

oder du baust dir eine .bat Datei, die deine .jar mit den Parametern aufruft.

In etwa so:
Code:
start javaw -Xms100m -Xmx300m -jar "C:\app.jar"
:rtfm:

Dann brauch der User halt nur diese .bat Datei anklicken und alles ist gut 🙂
Oder halt einen Neustart, wie oben von André erwähnt!

BG Mike90
 

Neue Themen


Zurück
Oben