是否可以告诉Eclipse在控制台中仅显示错误?
它可能很有用,因为我正在使用外部库来使用输出来显示不需要的数据。我知道有一个按钮“当标准错误发生变化时显示控制台”,但是,我正在寻找一个过滤器。
问候。
答案 0 :(得分:0)
Eclipse(Console
视图)显示两个不同的输出:标准输出(System.out
)和错误输出(System.err
)。 Eclipse本身无法区分运行的程序记录的实际错误/异常,以及将版权/许可证信息写入错误流的外部库。
答案 1 :(得分:0)
您可以使用System.setOut和System.setErr函数将System.out和/或System.err重定向到另一个OutputStream。这样您就可以创建自己的“控制台视图”或自己处理输出。如果实现自定义OutputStream类,还可以将数据发送到原始OutputStream(原始System.out或System.err)。
PrintStream oldOut;
oldOut = System.out;
System.setOut(new PrintStream(new OutputStream() {
@Override
public void write(int b) throws IOException {
// handle the "b" or
// send it to old stdout:
oldOut.write(b);
}
}));
// do what you want with the stream and afterwards
System.setOut(oldOut);
另请注意,如果在UI线程中执行此操作可能会出现问题。对我来说,申请总是被绞死。
如果您重定向这些流,则可以决定是否将其转发到标准输出/错误。