다음과 같은 샘플 Java 코드가 있습니다.Windows에서 JAVA로 CMD 파일을 올바르게 호출하는 방법은 무엇입니까?
String testEfdDirectoryPath="D:\\test";
String efdExecutable = "test.cmd";
File executableFile = new File(testEfdDirectoryPath, efdExecutable);
ProcessBuilder pb=new ProcessBuilder();
$$pb.command("cmd.exe","/C",executableFile.toString());$$
pb.directory(new File(testEfdDirectoryPath));
Process p=pb.start();
int code=p.waitFor();
System.out.print(code);
실제로 다른 java 응용 프로그램에 대한 호출이 있습니다. 출력을 리디렉션하기 위해 $$ 표시된 행을 다음과 같이 변경하지 않으면 다른 Java 응용 프로그램을 시작할 수 없습니다.
pb.command("cmd.exe","/C",executableFile.toString(),">output.txt");
의견이 있으십니까? 미리 감사드립니다. :)
고마워, 롤랜드. 당신 말이 맞아요. 이 문제는 ProcessBuilder의 javadoc에 명시되어 있습니다. – Smartmarkey