hallo forum
------------
vor einiger zeit meldete ich mich im forum, wegen dem start von externen Programmen innerhalb von java. nachstehender code wurde mir als lösung übergeben. das funktioniert auch. besten dank, doch ich schrieb nichts über meine eigentliche Absicht. ich wollte das mySQL-programm mysqldump.exe über java starten, weil ich mit dem systemeigenen backupprogramm "phpMyAdmin" nicht einverstanden bin.
das Programm läuft mit jeder EXE, nur leider nicht mit mySQLdump.exe. Java bekommt keinen Zugriff auf mySQLDaten. Java soll auch gar nicht zugreifen, mysqldump.exe soll zugreifen. Ich bin der Meinung, das kann es auch. wird cmd /k gestartet ist Java quasi suspendiert, und mein gewollter Prozess läuft in einer ganz anderen Umgebung ab.
Im Laufe der Zeit habe ich mir zuverlässige BackupVerfahren besorgt. Also, so ist es nicht, daß die Luft brennt. Nun werdet Ihr sagen, was will er denn, wenn alles okay ist ? Ganz einfach es stört mich.
Meine Frage: Warum blockiert Java, wenn es gar nichts zu tun hat ?.
gruß,
onkel tom
im Folgenden der Programmtext der im wesentlichen von hier stammt.
class extern3
{
public static void main(String[] args) throws Exception
{
ProcessBuilder pb = new ProcessBuilder("cmd /K mySqldump.exe");
pb.inheritIO(); // <- vererbe stdin/stdout/stderr
Process p = pb.start();
p.waitFor();
}
}
------------
vor einiger zeit meldete ich mich im forum, wegen dem start von externen Programmen innerhalb von java. nachstehender code wurde mir als lösung übergeben. das funktioniert auch. besten dank, doch ich schrieb nichts über meine eigentliche Absicht. ich wollte das mySQL-programm mysqldump.exe über java starten, weil ich mit dem systemeigenen backupprogramm "phpMyAdmin" nicht einverstanden bin.
das Programm läuft mit jeder EXE, nur leider nicht mit mySQLdump.exe. Java bekommt keinen Zugriff auf mySQLDaten. Java soll auch gar nicht zugreifen, mysqldump.exe soll zugreifen. Ich bin der Meinung, das kann es auch. wird cmd /k gestartet ist Java quasi suspendiert, und mein gewollter Prozess läuft in einer ganz anderen Umgebung ab.
Im Laufe der Zeit habe ich mir zuverlässige BackupVerfahren besorgt. Also, so ist es nicht, daß die Luft brennt. Nun werdet Ihr sagen, was will er denn, wenn alles okay ist ? Ganz einfach es stört mich.
Meine Frage: Warum blockiert Java, wenn es gar nichts zu tun hat ?.
gruß,
onkel tom
im Folgenden der Programmtext der im wesentlichen von hier stammt.
class extern3
{
public static void main(String[] args) throws Exception
{
ProcessBuilder pb = new ProcessBuilder("cmd /K mySqldump.exe");
pb.inheritIO(); // <- vererbe stdin/stdout/stderr
Process p = pb.start();
p.waitFor();
}
}