0
배치 파일을 실행하고 Windows 7 Enterprise 64 비트에서 오류 코드를 가져 오려고합니다.Java ProcessBuilder를 사용하여 Windows 배치 파일을 실행하면 항상 종료 코드 0이 반환됩니다.
내 배치 파일은 C : \ test.cmd 단일 라인을 포함 : - 배치 파일을 실행하기위한
exit 1
내 코드입니다 : -
public static void main(String[] args) throws Exception {
Process process = new ProcessBuilder("c:\\test.cmd").start();
System.out.println(process.waitFor());
}
출력은 0이다. 시험해 보면 : -
new String[] {"cmd", "/c", "c:\\test.cmd"}
결과가 다시 0입니다.
제가 빠뜨린 ProcessBuilder API에는 많은 마법이없는 것 같습니다. 누구든지 내 코드가 잘못되어있는 것을 볼 수 있습니까?
배치 파일의 종료 코드를 캡처해서는 안되나요?
정확하게 똑같은 코드를 언급하면 Windows 서버에서 하나의 결과를 얻을 수 있으므로 내 Windows 7 버전과 관련이 있습니다. – mekondelta