# Jar mit ausgelesenen Parametern starten



## java_neuling2 (29. September 2011)

Hallo, wollte aus meinem Java Programm raus, eine .jar ausführen und dabei Parameter übergeben


```
String username = jButton_Username.getText();
String passwort = jButton_Passwort.getText();
Runtime.getRuntime().exec("java -jar java.jar " + username + passwort);
```


So hab ich es mir vorgestellt, da tut sich aber gar nichts......Wenn ich das ganze allerdings so schreib


```
Runtime.getRuntime().exec("java -jar java.jar username passwort");
```

funktioniert alles (username und passwort wird natürlich ausgetauscht)

Hat jemand eine Idee, wie man das trotzdem lösen kann?


----------



## genodeftest (29. September 2011)

1. Du hast im oberen Code ein Leerzeichen nach dem Dateinamen und nach dem Benutzernamen vergessen
2. Du solltest die Datei mit ./java.jar starten, statt java.jar (sonst funktioniert dein Code auf Unix-basierten Systemen nicht)


----------



## java_neuling2 (29. September 2011)

Ja habs jetzt mal aufs kleinste gekürzt

Bin ja selber mit einem Unix-basierten System unterwegs


----------



## java_neuling2 (30. September 2011)

Keiner eine Idee?


----------



## sebastianb (30. September 2011)

Hey,

also du hast es bereits so abgeändert?


```
Runtime.getRuntime().exec("java -jar java.jar " + username +" "+ passwort);
```

http://www.tutorials.de/java/304492-runtime-exec-leerzeichen.html

Gruß

Sebastian


----------



## Anime-Otaku (6. Oktober 2011)

Am besten benutzt man den ProcessBuilder, um die Argumente einzeln übergeben, so dass es automatisch entsprechend dem OS escaped wird (zB Leerzeichen im passwort)
http://download.oracle.com/javase/6/docs/api/java/lang/ProcessBuilder.html

http://openbook.galileocomputing.de...11_005.htm#mjf64aaa69388264acddb1e1f6e8f7544d


----------



## meckiebro (6. Oktober 2011)

Mein Programm startet sich selbst neu wenn zuwenig Speicher zugewiesen ist. Das mache ich wie folgt:


```
Runtime.getRuntime().exec(new String[]{"java", "-Xms300m", "-Xmx300m","-jar",System.getProperty("user.dir") + "/Dateiname.jar"});
```


----------

