java System.exit(int status)使用

shell調用java執行

shell程序

echo "starting"

java TestExit

echo $?

echo "ending"

 

java程序1

public class TestExit{

public static void main(String[] args) {

System.out.println("testing exit in java");
}
}

結果1

starting
testing exit in java
0
ending

java程序2

public class TestExit{

public static void main(String[] args) {

System.out.println("testing exit in java");

System.exit(2);
}
}

結果2

starting
testing exit in java
2
ending

 

問題:

使用過程當中,System.exit(2)這個值,在一個java程序中,退出JVM時,shell獲取到的並非值2,而是0.java

這是爲何哪?shell

相關文章
相關標籤/搜索