Parameterübergabe an *.jar

Status
Nicht offen für weitere Antworten.

magic_halli

Bekanntes Mitglied
Hi,

ich rufe aus einer Anwendung heraus ein externes *.jar auf und übergebe beim Aufruf einige StringParameter, die dann im *.jar verwendet werden sollen:
Code:
String sTest1 = "ich bin";
String sTest2 = "Parameter2";
Runtime rt1 = Runtime.getRuntime();
rt1.exec("java -jar /home/workspace/Test.jar " + sTest1 + " " + sTest2);

Im Test.jar lese ich diese Parameter wieder aus und lasse sie mir anzeigen:
Code:
public void main(String[] args){

String sTest1 = args[0];
String sTest2 = args[1];

JOptionPane.showMessageDialog( null, sTest1 );
JOptionPane.showMessageDialog( null, sTest2 );

}
In der ersten MessageBox steht jetzt allerdings nur "ich" und in der zweiten "bin"... die Ausgabe "Parameter2" wird ganz weggelassen!
Ich denke, dass liegt daran, weil ich als sTest1 einen String mit Leerzeichen übergeben und somit jedes Wort einen eigenen Übergabeparameter darstellt. Somit habe ich theoretisch (und praktisch) 3 Parameter, die in mein Test.jar eingehen?!

Ich kann also gar keine Strings im eigentlichen Sinne übergeben, sondern nur einzelne Worte?!
Kann man das trotzdem irgendwie arrangieren, dass ich mein Vorhaben hier so durchdrücken kann? Welche Möglichkeiten gibts da evtl. noch, die mir unbekannt sind?

Gut, ich könnte vorher meine Variablen auf Leerzeichen prüfen, diese dann bspw. durch "_" ersetzen und auf der anderen Seite das "_" wieder durch Leerzeichen ersetzen, aber vielleicht gibts da ja noch mehr?

Danke und Gruß
 

Quaxli

Top Contributor
Der Code in Deiner main-Methode ist einfach zu starr. Wie Du schon erkannt hast, wird jeder String einzeln übergeben. Was hindert Dich also, zunächst mit args.length die Größe des übergebenen Arrays zu prüfen und damit die Verarbeitung zu steuern?
 

magic_halli

Bekanntes Mitglied
Quaxli hat gesagt.:
Der Code in Deiner main-Methode ist einfach zu starr. Wie Du schon erkannt hast, wird jeder String einzeln übergeben. Was hindert Dich also, zunächst mit args.length die Größe des übergebenen Arrays zu prüfen und damit die Verarbeitung zu steuern?
...nichts hindert mich daran! Ich brauche aber nunmal genau meine 2 Parameter, weil ich den Inhalt dieser nunmal für die weitere Verarbeitung brauche! Somit weiß ich zwar (mittels args.length), dass mehrere Argumente übergeben wurden, aber deshalb kann ich leider nicht, in Abhängigkeit der Anzahl, entsprechend viele Variablen in der main anlegen :cry: .

Also werd ich nun doch vor der Übergabe alle Leerzeichen ersetzen und auf der anderen Seite wieder auseinanderfrimeln. ???:L
 
G

Gast

Gast
Aus dem Bauch raus und es jemals getestet zu haben:

Code:
rt1.exec("java -jar /home/workspace/Test.jar \"" + sTest1 + "\" \"" + sTest2+ "\"");
 

erazor2106

Bekanntes Mitglied
Hallo,

habe auch das Problem dass die Paramterübergabe an das Jar-File nicht funktioniert.
Ich will über VBA eine Jar-Datei starten, welche 2 Strings übergeben bekommt. Wie kann ich das bewerkstelligen?

wie muss der aufruf lauten wenn ich "abcd" und "efgh" übergeben möchte
Jar-File liegt auf C:\test.jar

vielen dank schon mal
 

xehpuk

Top Contributor
Siehe: http://www.java-forum.org/java-basics-anfaenger-themen/114098-vba-jar-dateiaufruf.html

Code:
Shell ("java -jar C:\test.jar abcd efgh")

Sehe gerade, dass ich noch einen kleinen Fehler (fehlende Anführungszeichen am Ende) im genannten Thread hatte.

Allgemeiner (also mit berücksichtigten Leerzeichen) gehts so:
Code:
Const parameter As String = "abcd"
Const parameter2 As String = "efgh"
Shell ("java -jar C:\test.jar """ & parameter & """ """ & parameter2 & """")
 
Zuletzt bearbeitet:
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
C System.out.println - Parameterübergabe funktioniert nicht Java Basics - Anfänger-Themen 2
P Parameterübergabe, von Methode zu Methode zu main Java Basics - Anfänger-Themen 4
J Parameterübergabe in switch? Java Basics - Anfänger-Themen 2
W Was bedeutet im Struktogramm „zufall“ aufrufen (keine Parameterübergabe)? Java Basics - Anfänger-Themen 8
M Methode Objekt als Parameterübergabe Java Basics - Anfänger-Themen 6
B Parameterübergabe in main Java Basics - Anfänger-Themen 1
E Erste Schritte Parameterübergabe - Prozentrechner Java Basics - Anfänger-Themen 5
S Methoden Parameterübergabe Java Basics - Anfänger-Themen 4
S Parameterübergabe zwischen zwei Programme Java Basics - Anfänger-Themen 4
Joew0815 Parameterübergabe Java Basics - Anfänger-Themen 3
Q Parameterübergabe - Objekt - Referenz Java Basics - Anfänger-Themen 5
K Parameterübergabe im Terminal(Linux) Java Basics - Anfänger-Themen 8
V Parameterübergabe von Methoden verstehen Java Basics - Anfänger-Themen 13
P Java-Konsolenanwendung mit Parameterübergabe (Windows) Java Basics - Anfänger-Themen 3
X Parameterübergabe per Reflection Java Basics - Anfänger-Themen 10
H Parameterübergabe Java Basics - Anfänger-Themen 4
X Parameterübergabe Java Basics - Anfänger-Themen 6
S Parameterübergabe - identische Funktionen, aber falsche Funktion Java Basics - Anfänger-Themen 5
K Input/Output switch case - Parameterübergabe args[0] Java Basics - Anfänger-Themen 34
E Einfache Frage zur Parameterübergabe in Methoden Java Basics - Anfänger-Themen 8
A Parameterübergabe zwischen statischen und nicht statischen Klassen Java Basics - Anfänger-Themen 6
L Parameterübergabe Java Basics - Anfänger-Themen 6
K Parameterübergabe Java Basics - Anfänger-Themen 3
W Parameterübergabe Java Basics - Anfänger-Themen 9
Y Probleme mit Parameterübergabe Java Basics - Anfänger-Themen 8
O Parameterübergabe mit RadioButtons Java Basics - Anfänger-Themen 2
V Return - JA/NEIN - Parameterübergabe Array (Referenz) Java Basics - Anfänger-Themen 7
G Parameterübergabe über mehrer Klassen Java Basics - Anfänger-Themen 2
S parameterübergabe Java Basics - Anfänger-Themen 5
M Parameterübergabe an externe JAR-Datei? Java Basics - Anfänger-Themen 2
B Frage zu Code (Parameterübergabe) Java Basics - Anfänger-Themen 14
S Parameterübergabe: Generische Klasse Java Basics - Anfänger-Themen 4
B printf() mit Parameterübergabe? Java Basics - Anfänger-Themen 2
G Parameterübergabe als Referenz bzw. als Kopie Java Basics - Anfänger-Themen 4
G Java Applikation ein Programm mit Parameterübergabe starten Java Basics - Anfänger-Themen 3
V doPost parameterübergabe funktioniert nicht. Java Basics - Anfänger-Themen 5
G Problem bei Parameterübergabe Java Basics - Anfänger-Themen 2
T Runtime.getRuntime().exec mit parameterübergabe Java Basics - Anfänger-Themen 16
roflomfg Parameterübergabe in in "*.jar" files möglich? Java Basics - Anfänger-Themen 8
F Rekursive Aufrufe, Parameterübergabe, call by reference Java Basics - Anfänger-Themen 3
D probleme bei der Parameterübergabe Java Basics - Anfänger-Themen 12
M Parameterübergabe Java Basics - Anfänger-Themen 7
J Nested Layouts - Parameterübergabe bei ActionListener Java Basics - Anfänger-Themen 2
M Parameterübergabe! Java Basics - Anfänger-Themen 4
M Probleme bei Parameterübergabe in Rekursion Java Basics - Anfänger-Themen 5
K Parameterübergabe bei quickSort Java Basics - Anfänger-Themen 6
G Parameterübergabe bei Runtime.getRuntime().exec Java Basics - Anfänger-Themen 16
J parameterübergabe arraylist Java Basics - Anfänger-Themen 9
D args und parameterübergabe Java Basics - Anfänger-Themen 8
D Parameterübergabe mit JSP Java Basics - Anfänger-Themen 2
I Parameterübergabe beim Aufruf in der Kommandozeile Java Basics - Anfänger-Themen 4
B Parameterübergabe und return; Java Basics - Anfänger-Themen 3
F Performanceverlust bei ständiger Parameterübergabe? Java Basics - Anfänger-Themen 4
K Parameterübergabe Java Basics - Anfänger-Themen 5
R Parameterübergabe Java Basics - Anfänger-Themen 13
H Parameterübergabe zwischen einzelnen Funktionen Java Basics - Anfänger-Themen 4

Ähnliche Java Themen

Neue Themen


Oben