I Batch-Datei namens run.bat, die den folgenden Code inlcudes:Problem eine Batch-Datei in einer Java-Anwendung ausgeführt wird
@echo off
REM bat windows script
set CXF_HOME=.\lib\apache-cxf-2.2.7
java -Djava.util.logging.config.file=%CXF_HOME%\logging.properties -jar archiveServer-0.1.jar
Wenn ich diese Datei auf einer Befehlszeile ausführen es perfekt funktioniert. Jedoch wenn ich versuche, innerhalb einer Java-Datei mit der folgenden Anweisung auszuführen:
File path = new File("C:/Documents and Settings/Zatko/My Documents/Project-workspace/IUG/external/application/archive");
Runtime.getRuntime().exec(new String[]{"cmd.exe", "/C", "start", "run.bat"}, new String[]{}, path);
ich die folgende Fehlermeldung im Terminal Fenster:
'java' is not recognized as internal or external command, operable program or batch file.
Wo der Fehler sein kann?
Wie machst du es? – Anto
Der Wert C: \ Programme \ Java \ jdk1.6.0_18 \ bin; ist in der PATH-Variablen enthalten – Anto
Versuchen Sie, C: \ Programme \ Java \ jdk1.6.0_18 \ bin vor Java in Ihrer Batchdatei hinzuzufügen. Eine sauberere Methode könnte die Verwendung von Runtime.getRuntime() .exec() mit zwei Parametern in der angegebenen Umgebung sein. – stacker