如果进程的退出状态为0,则认为该进程已在Linux中正确完成.
我已经看到分段错误经常导致退出状态为11,但我不知道这是否只是我工作的惯例(那些失败的应用程序都是内部的)或标准.
Linux中的进程是否有标准退出代码?
我正在寻找java可执行文件的可能退出代码的定义:
(如何)我可以判断退出代码是执行Java进程还是VM本身?
示例:在Windows上,java -badoption返回1; java Main与Main作为一个有效的类可以返回1为好.
我可以使用任何VM选项来使退出代码更有意义吗?例如,要区分两种类型的退出代码?
如果我知道退出代码不是来自我的Java进程(只返回0),那么非零退出代码是什么意思?
在Windows上,我经常看到-1和1.由于这些是通过自动错误报告工具报告的,我看不到任何错误消息.我只有退出代码,需要解释它.
退出代码是否依赖于平台?
下面是我用来简单地从我的命令行程序打开和关闭Internet Explorer的程序.我在Windows XP操作系统上用Java 6运行我的程序:
Runtime runtime = Runtime.getRuntime();
Process p1 = runtime.exec("C:\\Program Files\\Internet Explorer\\iexplore.exe");
Thread.sleep(5000);
p1.destroy();
Thread.sleep(2000);
System.out.println("p1.exitValue(): "+p1.exitValue())
Run Code Online (Sandbox Code Playgroud)
退出值为:1.
Javadoc说:按照惯例,值0表示正常终止. http://download.oracle.com/javase/6/docs/api/java/lang/Process.html#exitValue()
然后我评论了p1.destroy而不是从我的Java程序关闭浏览器,我手动关闭了窗口(文件>退出).在这种情况下,p1.exitValue开始返回'0'.
我的问题是:
谢谢你的阅读,