【发布时间】:2012-01-29 22:00:09
【问题描述】:
我正在使用 System.exit(int) 从 java 程序中抛出退出代码。当程序以这种方式退出时,我应该能够看到任何消息吗?在这一点上我什么都看不到。
【问题讨论】:
我正在使用 System.exit(int) 从 java 程序中抛出退出代码。当程序以这种方式退出时,我应该能够看到任何消息吗?在这一点上我什么都看不到。
【问题讨论】:
这很正常。您可以在 bash 中使用 $? 查看 Unix 中命令的退出代码。
【讨论】:
System.exit 返回的值可以被操作系统读取,并且它的解释方式因操作系统而异。在大多数类 UNIX 系统中,如果其他进程愿意,程序的退出代码可以被其他进程捕获,但非零返回值不会导致操作系统打印任何错误消息。例如,如果程序编译失败,javac 编译器将返回非零状态码,但在这种情况下操作系统不会打印出任何特殊的错误消息。如果您想调出某种错误对话框,则需要手动操作。
希望这会有所帮助!
【讨论】:
你必须检查 $? java退出后查看退出代码。当命令返回非零状态时,shell 默认不打印消息。
【讨论】: