Zdravim,
potrebuju nastavit programu vice pameti, ale nechci mit samostatny bat soubor, ktery by volal:
@ECHO OFF
java -Xss16M -jar soubor.jar
Podarilo se mi to cele nacpat do jednoho JAR souboru a funguje to:
package app;
import java.awt.EventQueue;
import java.io.IOException;
public class Spustit {
public static void main(String[] args) {
if ((args.length != 0) && args[0].equals("xss_set")) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
Okno frame = new Okno();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
} else {
System.out.println("Není nastavená paměť! Nastavuji paměť a spouštím program znovu.");
try {
// TODO predat jmeno JAR souboru
Runtime.getRuntime().exec("java -Xss16M -jar ./soubor.jar xss_set");
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
Problem je, kdyz nejaky "aktivni" uzivatel prejmenuje JAR soubor - pak to nejde.
Je nejaka funkcni moznost, jak muze program za sveho behu zjistit jmeno sveho jar souboru?
Nebo existuje nejake lepsi reseni, jak predat v programu JVM argumenty? Znovu spusteni noveho JVM se mi moc nelibi, ale lepsi reseni neznam :-(
Dekuji za pomoc!