processbuilder正在尝试运行。使用java在另一个目录中创建bat文件
我正在尝试使用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=p.start()处;无限期地 此外,批处理文件本身不会执行 这里可能有什么问题?? [我也尝试过运行时#exec和桌面#open,但都没有用]
# 1 楼答案
这个概念与此类似:Spring boot application.properties conflict when one application deploys another
在那里,我提供了一套相当完整的代码