Я пытаюсь выполнить простой командный файл из Java, используя Runtime.getRuntime (). Exec (команда);но, столкнувшись с проблемами, ниже приведен мой фрагмент кода
public class Path {
public static void main(String args[]){
String[] command = new String[3];
command[0]="cmd";
command[1]="/C";
command[2]="D:/alt/a.bat";
Process p;
try {
p = Runtime.getRuntime().exec(command);
BufferedReader stdInput = new BufferedReader(new InputStreamReader(
p.getInputStream()));
BufferedReader stdError = new BufferedReader(new InputStreamReader(
p.getErrorStream()));
String s = null;
while ((s = stdInput.readLine()) != null) {
System.out.println(s);
}
while ((s = stdError.readLine()) != null) {
System.out.println(s);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
, и пакет a.bat содержит тест ant -f runme.xml, а файл runme.xml находится в физическом расположении D: / alt с цельютест, пока все хорошо, но когда я пытаюсь выполнить приведенный выше Java-код, ниже вывод
D:\RCPStack\Path>ant -f runme.xml test Buildfile: runme.xml does not
exist! Build failed
, когда я выполняю вручную, все работает нормально, похоже, проблема в том, что код ниже - вручнуювывод выполнения ![enter image description here](https://i.stack.imgur.com/BBjmJ.gif)
как справиться с этим (я не знаю, является ли код неправильным) и обработать как лучший метод