2010-03-15 53 views

回答

2

我在這裏猜測一下,因爲你的問題有點模糊。但我假設你在你的程序中找到了這個程序在上次運行時正常終止或不正常。

如果你有一些配置目錄或文件 - 在那裏留下一個註釋,當程序啓動時,當你的進程正常退出時刪除說明。如果在您的程序啓動時該註釋仍然存在,則另一個實例仍在運行(您需要單獨檢查的某個),否則它不會正常終止。

0

JVM在程序終止時返回一個整型退出碼,其中0表示程序正確終止,而非零值通常表示錯誤條件。如果您的程序正常結束(即主方法返回時沒有拋出異常),那麼JVM將返回0,否則,如果引發異常並且未捕獲到異常,那麼JVM將返回一個非結束數據,零錯誤代碼。

您也可以通過System.exit(int)方法自己設置錯誤代碼。這會導致JVM立即終止並返回指定的錯誤代碼。

假設您位於基於Windows的計算機上,則可以看到通過回顯%ERRORLEVEL%屬性返回的錯誤代碼。

例如假設你有一個類主,你可以看到錯誤代碼是這樣的:

C:\>java Main 

C:\>echo %ERRORLEVEL% 
0 

如果你再變主打電話System.exit(1),則誤差水平應該是這樣的:

C:\>echo %ERRORLEVEL% 
1