【发布时间】:2019-08-09 13:21:04
【问题描述】:
我正在尝试使用 Process Builder 运行批处理文件 批处理文件在另一个目录中
String filepath = "D:";
String filename = "hello.bat";
try {
ProcessBuilder p = new ProcessBuilder();
p.directory(new File(filepath));
p.command("cmd.exe", "/c ", filename);
Process process = p.start();
process.waitFor();
InputStream in = process.getInputStream();
ByteArrayOutputStream baos = new ByteArrayOutputStream();
int c = -1;
while((c = in.read()) != -1)
{
baos.write(c);
}
String response = new String(baos.toByteArray());
System.out.println("Response From Exe : "+response);
没有抛出异常,似乎卡在了 Process process = p.start();无限期地。 此外,批处理文件本身不会被执行 这里可能是什么问题? [我也尝试过 Runtime#exec 和 Desktop#open,但无济于事]
【问题讨论】:
标签: java processbuilder