jstack(1)

名前
jstack - スタックトレース

    o   形式

    o   パラメータ

    o   説明

    o   オプション

    o   関連項目

    o   既知のバグ

形式

jstack [ option ] pid
jstack [ option ] executable core
jstack [ option ] [server-id@]remote-hostname-or-IP

パラメータ

各オプションは互いに排他的です。オプションを使用する場合、コマンド名の直後に記述します。オプションを参照してください。

    pid 印刷するスタックトレースのプロセス ID です。プロセスは Java プロセスである必要があります。マシン上で実行している Java プロセスの一覧を取得するには、jps(1) を使用します。

    executable
        コアダンプの作成元の Java 実行可能ファイルです。

    core
        印刷するスタックトレースのコアファイルです。

    remote-hostname-or-IP
        リモートデバッグサーバー (jsadebugd(1) を参照) のホスト名または IP アドレスです。

    server-id
        複数のデバッグサーバーが同一のリモートホストで実行している場合の、オプション固有の ID です。

説明

jstack は、指定された Java プロセスやコアファイルまたはリモートデバッグサーバーに対する Java スレッドの Java スタックトレースを印刷します。Java フレームごとに、フルクラス名、メソッド名、「bci」(バイトコードインデックス)、および行番号 (利用可能な場合) が印刷されます。-m オプションを使用すると、jstack は、すべてのスレッドの Java フレームとネイティブフレームの両方を、「pc」(プログラムカウンタ) とともに印刷します。ネイティブフレームごとに、「pc」にもっとも近いネイティブシンボル (利用可能な場合) が印刷されます。C++ 分解名は分解解除されません。C++ 名を分解解除するには、このコマンドの出力を c++filt にパイプします。指定されたプロセスが 64 ビット VM 上で実行されている場合、-J-d64 オプションを指定しなければならない場合があります。 次に例を示します。

    jstack -J-d64 -m pid

注 - このユーティリティーはサポート対象外であり、将来の JDK のバージョンでは利用できなくなる可能性があります。Windows プラットフォーム上で使用可能な唯一の jstack 形式は、次のとおりです。

    jstack [-l] pid

オプション

    -F  「jstack [-l] pid」が応答しない場合にスタックダンプを強制します。

    -l  長形式のリスト。所有 java.util.concurrent の 所有できるシンクロナイザ @
        http://java.sun.com/javase/6/docs/api/java/util/concurrent/locks/AbstractOwnableSynchronizer.htmlの一覧など、ロックについての追加情報を印刷します。

    -m  混合モード (Java およびネイティブ C/C++ フレームの両方) のスタックトレースを印刷します。

    -h  ヘルプメッセージを印刷します。

    -help
        ヘルプメッセージを印刷します。

関連項目

    o   pstack(1)

    o   c++filt(1)

    o   jps(1)

    o   jsadebugd(1)

既知のバグ

混合モードのスタックトレース (-m オプション使用) は、リモートデバッグサーバーでは機能しません。