这是代码:它成功打开一个终端,但输出中没有显示
try {
String command= "/usr/bin/xterm";
Runtime rt = Runtime.getRuntime();
Process pr = rt.exec(command);
BufferedWriter os =
new BufferedWriter(new OutputStreamWriter(pr.getOutputStream()));
BufferedReader is =
new BufferedReader(new InputStreamReader(pr.getInputStream()));
String line = "";
while ((line = is.readLine()) != null) {
System.out.print(line);
}
} catch (Exception io) {
}
答案 0 :(得分:3)
xterm
默认不生成输出。它只显示一个窗口。尝试在终端中启动xterm
并查看它产生的输出(在原始终端中,而不是在新窗口中!)。答案 1 :(得分:1)
您是否阅读过When Runtime.exec() won't。如果您阅读整篇文章,您将避免并理解exec命令的许多缺陷。
然后你可以阅读ProcessBuilder
,这是一种更现代的方式来调用其他进程。
聚苯乙烯。空catch块吞下异常并使其更难调试。