可执行jar中的“ System.out.println()”会怎样?

马哈茂德峰:

假设我已经executable jar从使用过的代码中创建了

System.out.println()

当我们运行可执行jar时,没有控制台。那么,这条线怎么办?如何java处理这种情况?

编辑01

注意:这种情况是我既不使用控制台运行jar也不以任何方式将任何控制台与其关联。

编辑02:使事情更清楚:

我知道什么都不会打印,因为没有控制台..!我想知道java在这种情况下如何处理这条线?生成可执行jar的字节码时,是否省略此行?还是在没有控制台的情况下忽略了这一行?还是什么

乔恩·斯基特(Jon Skeet):

在可执行jar文件中运行代码没有什么特别的。如果您从控制台运行它,例如,java -jar foo.jar输出仍将进入控制台。

如果您以某种不附加控制台的方式运行代码(例如javaw在Windows上,这是与可执行jar文件关联的默认程序),则输出将无处可去。它不会引起任何错误-文本只会丢失。

请注意,在这种情况下,如果你使用的System.console()不是,将返回null所以:

System.out.printf("Foo%n"); // No problem. Goes nowhere.
System.console().printf("Foo%n"); // Would throw a NullPointerException.

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何查看System.out的可执行jar?

在System.out.println()中

System.out.println()与Java中的\ n

System.out.println()是否会影响代码效率?

什么是Java中System.out.println()中的system,out,println

System.out.println行影响逻辑的执行

Java中的toString-System.out.println与Android中的日志

System.out.println-Java

System.out.println与PrintWriter

如何从代码库中删除System.out.println

Java中System.out.println的怪异行为

Java 8中“ System.out :: println”的用途是什么

连接的int变量而不是在System.out.println()中添加

Java中“ System.out.println()”和“ toString()”之间的连接

System.out.println在Intellij Idea中写到哪里?

Java中的System.out.println()易失

Java中System.out.println()和return之间的区别

Javascript中相当于Java的System.out.println()?

Java中System.out.println的含义是什么?

如何在Java中缩短system.out.println

Windows下tomcat中的system.out.println写入哪里?

System.out.println()中的toString()方法是双重调用?

System.out.println 它没有显示在终端中

传递System.out.println(); 作为方法中的参数

当Maven中的System.out.println重置线程中断标志

变量未显示在system.out.println中

无法解析JavaCC中的System.out.println()

在执行jar并将其输出重定向到文件时,在控制台上打印System.out.println语句

Java中的System.out.println-是否在本机方法中初始化out?