18

是否有 java 进程终止的退出代码和含义列表?因为我有一个退出代码 23,但我不知道它是什么(我无法更改日志以查看完整的堆栈跟踪,因为它位于不同的远程服务器中)。

我浏览了几个小时,找不到任何提及退出代码 23 的内容。

4

5 回答 5

25

在您的 Java 应用程序中,当您调用 时System.exit(n);,Java 运行时环境将n作为退出代码返回给操作系统。

该数字的含义取决于您正在运行的程序 - 不是 Java 本身,而是您正在运行的程序会产生此数字。没有标准数字。查看生成此退出代码的程序的文档以了解其含义。

于 2011-06-23T12:46:47.297 回答
6

退出代码 23 的含义没有定义。除了非零状态代码表示异常终止之外,退出代码没有关于值代表什么的约定。零表示成功,但即便如此,它也完全取决于开发人员是否遵守这个“标准”。

于 2011-06-23T12:43:29.317 回答
3

另一个问题中,有一个指向带有JVM 退出代码说明的页面的链接。但是退出代码 23 似乎很神秘。

于 2015-07-22T12:05:32.370 回答
0

退出代码 23 可能意味着“系统中打开的文件太多”

在某些 Linux 安装上,您可以简单地运行perror 23来查找它。如果该命令不可用,您可以通过一个简单的 C 程序获取它:

#include <stdlib.h>
#include <stdio.h>
#include <string.h>

int main(int argc, char **argv) {
    int e = 23;
    printf("%i: %s\n", e, strerror(e));
    return 0;
}
于 2021-02-04T21:52:23.503 回答
-1

在 Eclipse RCP 中,退出代码 23 表示重新启动。但它只能在 IDE 下工作。

于 2017-06-11T11:47:07.903 回答