Java 将所有输出定向到MessageConsole

Java 将所有输出定向到MessageConsole,java,eclipse-plugin,eclipse-rcp,eclipse-pde,Java,Eclipse Plugin,Eclipse Rcp,Eclipse Pde,目前,我正在使用MessageConsole的,MessageConsoleStream来写入控制台 我的问题是,是否可以进行一些配置,使我写入输出流的所有内容都重定向到MessageConsoleStream 例如,如果我发出以下命令,它将自动写入配置的控制台 System.out.println(“txt”) e.printStackTrace() 如果发生未检查的异常(应自动转到控制台) 您可以重定向所有out和err数据,System.out.println(“txt”)和e.pri

目前,我正在使用
MessageConsole的
MessageConsoleStream
来写入控制台


我的问题是,是否可以进行一些配置,使我写入输出流的所有内容都重定向到
MessageConsoleStream


例如,如果我发出以下命令,它将自动写入配置的控制台

  • System.out.println(“txt”)
  • e.printStackTrace()
  • 如果发生未检查的异常(应自动转到控制台)

  • 您可以重定向所有
    out
    err
    数据,
    System.out.println(“txt”)
    e.printStackTrace()
    被打印到
    out
    流,而“未检查的例外”被打印到
    err
    流。
    在本例中,
    System.out.println(“txt”)
    txt
    写入
    log.txt
    文件

    OutputStream out = new FileOutputStream("log.txt");
    PrintStream stream = new PrintStream(out);
    System.setOut(stream);
    System.setErr(stream);
    
    在您的情况下,您可以这样做:

    MessageConsoleStream out = ...;
    PrintStream stream = new PrintStream(out);
    System.setOut(stream);
    System.setErr(stream);