捕获错误消息并在控制台(IDE)中显示



我正在运行一个c++程序(makefile)作为后台进程使用Processbuilder从我的java程序。我正在使用. getinputstream捕获cmd提示符中显示的值,并在我的控制台(IDE)中显示。

    input = new BufferedReader(new InputStreamReader(p.getInputStream()));
            String line;
    try {
       while((line=input.readLine()) != null) {
            System.out.println(line);

这个效果很好。假设如果我在我的一个c++文件中犯了一些错误,当我尝试运行makefile时,它没有捕获错误消息。在使用"cmd.exe","start"时,我可以在cmd提示符中看到错误,但它不会显示在控制台(IDE)中。

我可以知道我应该做什么得到错误信息显示。

1)系统。Err和printstream可以解决这个问题吗?如果是这样的话,请给我展示一个示例代码。提前感谢

进程有.getErrorStream(),或者你可以使用MadProgrammer的评论中提到的ProcessBuilder的.redirectErrorStream()和这个SO问题:具有输入/输出流的Java进程

最新更新