我正在使用此代码:
ProcessBuilder builder = new ProcessBuilder("cmd.exe","java","invalidArg");
builder.redirectErrorStream(true);
try {
Process p = builder.start();
BufferedReader r = new BufferedReader(new InputStreamReader(p.getInputStream()),10240);
String line;
if(processIsTerminated(p)){
line = r.readLine();
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
当我使用.start()函数时,有没有办法让cmd窗口打开?目前它运行隐藏,如果没有响应,我不知道我的命令是成功运行还是根本没有运行。
答案 0 :(得分:1)
你在Windows下只有两种运行命令的方法:
您可以使用start [/w] command arguments
的{{1}}命令获取第二种执行方式,只需在cmd窗口中键入cmd.exe
即可查看会发生什么情况(start /w cmd.exe /c "echo foo & pause"
仅在那里让你有时间阅读输出...)
从java开始,它将是:
& pause