我认为您正在循环运行这些chmod命令-
否则我不明白为什么会有那么多异常。您可能因为未读取生成的进程的输出而陷入僵局。这当然用来咬我回到前
ProcessBuilder,
Runtime.exec()天。
将您的代码段更改为上述模式:
try { ProcessBuilder pb = new ProcessBuilder("/bin/chmod", "777", path); pb.redirectErrorStream(true); // merge stdout, stderr of process Process p = pb.start(); InputStreamReader isr = new InputStreamReader(p.getInputStream()); BufferedReader br = new BufferedReader(isr); String lineRead; while ((lineRead = br.readLine()) != null) { // swallow the line, or print it out - System.out.println(lineRead); } int rc = p.waitFor(); // TODO error handling for non-zero rc}catch (IOException e) { e.printStackTrace(); // or log it, or otherwise handle it}catch (InterruptedException ie) { ie.printStackTrace(); // or log it, or otherwise handle it}
(来源:此网站),看看是否有帮助。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)