0
Process process = Runtime.getRuntime().exec(propertiesMap.get("PmdBatFile"));
BufferedReader reader =
new BufferedReader(new InputStreamReader(process.getInputStream()));
String s ;
while ((s = reader.readLine()) != null) {
System.out.println(s);
}
process.waitFor();
在此寫入大約13,000行輸出後,進程停止並進入死鎖狀態,文件大小顯示爲3 MB,因此它應該幾乎在文件中有超過1個缺少行的地方寫了超過500MB的文件。process.waitfor()和BufferReader未在控制檯中寫入完整文件
有什麼限制可以通過bufferReader寫入?
不是。問題可能是該流程期待輸入。在開始讀取輸出之前,您需要關閉其輸入流,並且還需要合併或讀取其標準錯誤。 – EJP