javacoreスレッドダンプの取得/Windowsの場合

形式

javacore [-i|-f] -p <プロセスID>

機能

コマンド実行時のスレッドダンプを取得します。なお,このコマンドは,Windows用です。

引数

-i
スレッドダンプの出力処理の実行を確認するメッセージが表示されます。表示されたメッセージに対してyまたはnを入力します。このとき,yを入力するとスレッドダンプが出力されます。nを入力すると,何も出力しないで処理を終了します。省略した場合,-fオプションが指定されないかぎり,このオプションは有効です。
-f
-iオプションを無効にします。省略した場合,-iオプションが有効になります。
-p <プロセスID>
<プロセスID>には,スレッドダンプを取得するjavaプログラムのプロセスIDを指定します。

戻り値

0:
正常終了しました。
1:
異常終了しました。
2:
一定時間内にスレッドダンプ出力処理終了の応答がありませんでした。

入力例

  1. -fオプションを省略してjavacoreコマンドを実行します。

    % javacore -p 8326

  2. スレッドダンプの出力処理の実行を確認するメッセージが表示されます。

    Output a thread dump:?(y/n)

  3. スレッドダンプを出力する場合はyを,出力しない場合はnを入力します。

    Output a thread dump:?(y/n)y

  4. 実行中のjavaプログラムは,カレントディレクトリに次のファイルを作成し,プログラムを継続します。
    スレッドダンプ
    javacore<プロセスID>.<日時>.txt

出力メッセージ

次のエラーメッセージまたは警告メッセージを出力した場合,スレッドダンプは取得されません。

項番メッセージ説明
1usage: javacore [-f|-i] -p process-idコマンドの引数が不正です。
2javacore: illegal option -- <オプション>コマンドの引数に指定した<オプション>が不正です。
3javacore: can't communicate with process <プロセスID>.引数に指定した<プロセスID>に問題があるため,通信できません。
または,引数に指定した<プロセスID>に該当するプロセスが存在しません。
4<プロセスID>: Not ownerコマンドの引数に指定した<プロセスID>に0が指定されています。
5<プロセスID>: Now processing previous request, this request canceledコマンドの引数に指定した<プロセスID>のプロセスがすでに処理中です。
6javacore: can't create work file at temporary directory, this request canceled一時ファイル用ディレクトリに参照および書き込み権限がありません。
7javacore: can't get temporary directory, this request canceledGetTempPath()APIがエラーリターンしたため,一時ファイル用ディレクトリが取り出せません。
8javacore: unexpected error occurred: <エラー原因>コマンド実行中に予期しないエラーが発生しました。
9<プロセスID>: Timeout occurred. Java process not responding.コマンドの引数に指定した<プロセスID>に該当するプロセスから,一定時間内にスレッドダンプ出力処理終了の応答がありませんでした。
10javacore: please delete <削除できなかったファイル名> in <削除できなかったファイルのフルパス>.コマンド終了時にjavacoreコマンドの内部処理で作成したファイルを削除できませんでした。<削除できなかったファイルのフルパス>にある,削除できなかったファイルを削除してください。

注意事項