返回 Java 控制台

发布于 2024-12-11 08:49:54 字数 105 浏览 0 评论 0原文

我正在编写一个插入更大框架的 Java 类。在上游的某个地方,代码将 System.out 重定向到标准输出以外的其他地方,但我真的想将调试消息打印到标准输出。有没有办法让我将钩子恢复到标准输出?

I'm writing a Java class which plugs into a larger framework. Somewhere upstream, the code is redirecting System.out to somewhere other than standard out, but I really want to print a debugging message to standard out. Is there a way for me to get a hook back into standard out?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

心安伴我暖 2024-12-18 08:49:54

也许更简单的解决方案是使用 System.err 而不是 System.out 来调试消息?这会容易得多,并且不会引入重定向的任何副作用。

Perhaps an easier solution is to use System.err instead of System.out for debugging messages? It would be a lot easier and would not introduce any side-effects of that redirection.

2024-12-18 08:49:54

为什么不使用System.err

我看到的最简单的解决方案是在调用库之前将 System.out 存储在类中的某个位置。

环顾四周后,您应该能够使用 System.console().printf(...)。

Why not use System.err?

The most straightforward solution I see is just store System.out somewhere in your class before calling the library.

After looking around a bit, you should be able to use System.console().printf(...).

放我走吧 2024-12-18 08:49:54

你可以简单地写:

System.setOut(System.out);

You can simply write:

System.setOut(System.out);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文