Liebe Java-Gemeinde,
ich schreibe meist Konsolenanwendungen, tw. mit grafischer Ausgabe. Für den Start einer Java-Anwendung habe ich noch keine vernünftige Variante des Aufrufs gefunden.
Mich interessiert der Direkt-Aufruf vom Main.Main. Ich weiß, dass es mit jar-Dateien mehr Möglichkeiten gibt. Da ich aber meist der einzige Nutzer der Programme bin, ist es chic, einfach was in Eclipse zu ändern und dann ist es ausführbar.
Die Primitiv-Version ist
(Das ist natürlich kein Java-Code, aber zumindest Code
)
Das hat erst mal den Nachteil, dass man nur 9 Parameter übergeben kann, das reicht meist nicht. Mit dem Batch-Befehl Shift bekomme ich auch das hin:
Damit kommt man ziemlich weit. Es bleibt ein Problem: Oft müssen Dateinamen angegeben werden. Die Start-Batch-Datei liegt irgendwo im Suchpfad, ist also ausführbar. Die Dateien liegen üblicherweise im Punkt-Verzeichnis. Wenn ich diese – ggf. mit automatischer Dateinamensergänzung – eintrage, findet der Aufruf sie nicht, weil er ja zur Laufzeit im bin-Verzeichnis steht. Ich muss also den vollen Pfadnamen hinschreiben, das ist umständlich und für Fremde verwirrend.
Hat dafür jemand eine vernünftige Lösung?
ich schreibe meist Konsolenanwendungen, tw. mit grafischer Ausgabe. Für den Start einer Java-Anwendung habe ich noch keine vernünftige Variante des Aufrufs gefunden.
Mich interessiert der Direkt-Aufruf vom Main.Main. Ich weiß, dass es mit jar-Dateien mehr Möglichkeiten gibt. Da ich aber meist der einzige Nutzer der Programme bin, ist es chic, einfach was in Eclipse zu ändern und dann ist es ausführbar.
Die Primitiv-Version ist
Java:
pushd .
cd <bin-Vz>
java Main.Main %1 %2 %3 %4 %5 %6 %7 %8 %9
popd
Das hat erst mal den Nachteil, dass man nur 9 Parameter übergeben kann, das reicht meist nicht. Mit dem Batch-Befehl Shift bekomme ich auch das hin:
Java:
@echo off
pushd .
cd <bin>
set /p ="java Main.Main "<nul > myBatchfile.bat
:Loop
IF "%1"=="" GOTO Continue
set /p =" %1 "<nul >> myBatchfile.bat
SHIFT
GOTO Loop
:Continue
call myBatchfile.bat
del myBatchfile.bat
popd
Damit kommt man ziemlich weit. Es bleibt ein Problem: Oft müssen Dateinamen angegeben werden. Die Start-Batch-Datei liegt irgendwo im Suchpfad, ist also ausführbar. Die Dateien liegen üblicherweise im Punkt-Verzeichnis. Wenn ich diese – ggf. mit automatischer Dateinamensergänzung – eintrage, findet der Aufruf sie nicht, weil er ja zur Laufzeit im bin-Verzeichnis steht. Ich muss also den vollen Pfadnamen hinschreiben, das ist umständlich und für Fremde verwirrend.
Hat dafür jemand eine vernünftige Lösung?
Zuletzt bearbeitet: