java中执行gcc编译,得不到编译结果

Process process = Runtime.getRuntime().exec(cmd);
BufferedReader br = new BufferedReader(new InputStreamReader(process.getInputStream()));
String s = br.readline();
可以得到一般命令的输出,但是GCC编译出错时结果得不到

后来我尝试用gcc a.cpp -o a.cpp 2> result.txt 将a.cpp编译结果输出到result.txt中 问题得以解决

出错时是不是在stderr管道

就是打印在命令下的 编译信息,但是无法得到, 我用的是windows下的gcc