Javaでプログラムを作成した場合、プログラムが正常に終了したのか、正常に終了したのかを知るにはどうすればよいですか?
2 に答える
あなたの質問はちょっと漠然としているので、私はここで少し推測しています。ただし、プログラム内で、このプログラムが最後に実行されたときに正常に終了したかどうかを確認することについて話していると思います。
構成ディレクトリまたはファイルを取得した場合は、プログラムの起動時にメモを残し、プロセスが正常に終了したときにそのメモを削除します。プログラムの起動時にそのメモがまだ残っている場合は、別のインスタンスがまだ実行されているか(個別に確認する必要があります)、正常に終了しませんでした。
JVM は、プログラムの終了時に整数の終了コードを返します。0 はプログラムが正常に終了したことを意味し、ゼロ以外の値は通常エラー状態を表します。
プログラムが正常に終了した場合 (つまり、main メソッドが例外をスローせずに戻った場合)、JVM は 0 を返します。それ以外の場合、例外がスローされてキャッチされなかった場合、JVM はゼロ以外のエラー コードを返します。
メソッドを使用して、自分でエラー コードを設定することもできますSystem.exit(int)
。これにより、JVM はただちに終了し、指定されたエラー コードを返します。
Windows ベースのマシンを使用していると仮定すると、%ERRORLEVEL%
プロパティをエコーすることによって返されるエラー コードを確認できます。
たとえば、クラス Main があると仮定すると、次のようなエラー コードが表示されます。
C:\>java Main
C:\>echo %ERRORLEVEL%
0
main を callSystem.exit(1)
に変更すると、エラー レベルは次のようになります。
C:\>echo %ERRORLEVEL%
1