问题标签 [system.err]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - jsch会话是否拥有错误流,当它设置时,没有其他线程可以使用它?
我正在创建 jsch 会话以远程运行命令,但我正面临一种奇怪的行为。在我的一个线程中,我创建会话,将输出流设置为 System.err 并使用会话。
在另一个线程中,我有一些使用 Java util 记录器的东西(默认情况下将日志写入 System.err)。创建 jsch 会话后,我不再在第二个线程的控制台中看到记录器消息。当我删除这一行时:
或将通道的错误流设置为空,来自我的第二个线程的记录器消息出现在控制台中就好了。
如果 jsch session 在设置时拥有 System.err 流,这就是 logger 无法使用的原因,那么当 session 的错误流设置为 null 时会发生什么?如果不是这种情况,那么为什么在会话开始使用 System.err 后没有出现记录器消息?
如果有人可以解释这一点,那将非常有用。
java - System.err.println() 的输出位置;正在改变?
System.err.println() 的输出位置;即使它在代码中的位置相似,输出也会发生变化。请查看 System.err.println() 位置相同的 4 个案例;在其中,但其在输出中的位置是不同的。请在评论中查看程序最后的输出。请解释执行顺序。尝试以下代码自己查看惊人的输出。
java - Java 8,El Capitan:System.err.println() 输出未到达 Console.app
在 El Capitan 上掌握 Java 8...
我曾经让异常将它们的消息打印到 System.err 并且它们曾经很好地出现在 Console.app 中。现在他们没有,我很难弄清楚出了什么问题。
我的 main() 方法如下所示:
当我在 IDE 中运行应用程序时,消息会输出到 IDE 的“运行”面板。都好。当我构建应用程序并从 Finder 中双击它时,Console.app 中没有任何内容。我查看了系统日志查询 -> 所有消息,我查看了文件 -> system.log。没有。
我的这个问题的第一个版本非常简短和甜蜜,认为 System.err 消息现在输出到控制台以外的其他地方。但是在回应时几乎是震耳欲聋的沉默,我认为情况并非如此,而且大多数人通过System.err.println()
.
哪位好心人可以帮我弄清楚我的系统出了什么问题吗?
更新:我现在已将 JRE 捆绑到应用程序包中,但在 Console.app 中仍然看不到任何内容。今天晚些时候我会得到一个签名证书,看看这是否有什么不同。
java - Java System.err.println 延迟?
当我编写如下 Java 代码时:
, 它有时会返回
,机器人并不总是......它也会打印
.
我认为,在我的代码中,System.err#println
当时没有任何线程调用。
即使我放入Thread.sleep(100);
,它也经常打印Working 100.0%
两次。我没有尝试超过 100 秒。(我不确定它是否真的有效并且更进一步......我尝试的还不错......)
如何确保代码仅以第一种方式打印?如果有一定的答案,它也可以用于System.out::println
吗?
java - System.err.println 和 System.out.println 没有进入日志文件
我开发了新的 Spring webservice,并且在我的代码中几乎没有 System.out.println 和 System.err.println 调试行。此 Web 服务 ear 部署到 IBM WAS 服务器。但我没有在 SystemOut.log 和 SystemErr.log 文件中看到那些调试语句。但是同一 WAS 服务器中的其他耳朵的调试语句正在这些日志文件中打印。
有人可以帮助我为什么我的新耳朵调试语句单独没有进入日志文件?
java - System.err.print 和 System.out.print 的处理差异
System.err.print 和 System.out.print 在执行时的处理方式有什么不同吗?我有一个二维整数数组,范围在 2 到 20 之间。数组打印为矩阵,所有 >=10 的整数都应使用 System.err.print 打印为红色。如果这样做,输出如下所示:
所有 int>=10 都是红色的。
而不是看起来像这样
没有我想要的红色标记。
两者都使用相同的数组,首先使用以下代码打印:
而第二个输出使用此代码打印
有没有办法在仍然使用 System.err.print 的同时防止未格式化的输出?
java - Java System.in/out/err 是否始终打开?
Javadoc 说in
,out
并且err
“已经打开”,我只是想知道它们会在程序完成后关闭吗?如果不是,是否与使用后关闭任何 I/O 流引用的做法相矛盾?
java - 在外部使用 Tomcat 从 IntelliJ 运行 Web 应用程序时,发送到 System.err 的消息在哪里?
我正在使用IntelliJ 2019.3 Ultimate edition IDE通过Apache Tomcat Web 容器运行我的Vaadin Web 应用程序。
当消息发送到System.err
以下位置时:
......该消息在哪里登陆?
在 IntelliJ 中显示的控制台上,我看到了我发送到的消息System.out
。但是发送的消息System.err
无法出现在同一个控制台上。
java - Java 中 System.exit(-1) 之前 System.err.println() 的错误消息
我有一个崩溃的 Java Virtual Mashines 没有错误消息的问题。我经常在我的代码中做一些检查。出了问题,如果其中一项检查无法完成,java 程序将无法继续。例如:
我可以确定,在使用 System.exit(-1) 杀死 JVM 之前,控制台上会打印一条带有 System.err.println("...") 的错误消息吗?如果不是,这可以解释为什么我的 JVM 崩溃而没有错误消息。
java - 如何登录到字符串?有没有办法将每个控制台输出捕获到单个字符串中?
我使用这个java.util.logging
Logger
类,我想捕获控制台上的所有消息(不仅仅是日志)并将它们放在一个字符串中(我稍后会在其他地方使用)。我确实找到了一个从 中捕获println
-s的类System.out
,但是日志转到了System.err
所以我必须以某种方式也包含这些。我试图抓住他们两个,但我没有找到办法。我也尝试使用处理程序,但我无法弄清楚它们。我怎么解决这个问题?有没有办法将每个控制台输出捕获到单个字符串中?