在Java中,如何阻止代码写入系统
我的应用程序调用第三方库,该库通过发出大量System.out.println()调用来滥发日志
我没有反编译和修补库的合法权利
我正在运行Websphere 8.5.x
考虑使用System.setOut(PrintStream out),但这将影响整个过程,而我只想将影响限制在单个线程。
如果你能以某种方式(例如通过名称)可靠地识别出你想要"静音"的线程,你就可以将setOut
分配给你自己的流,如果调用不是来自静音线程,它只会将调用委托给实际的System.out
。