jstack(1)

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

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

パラメータ
オプションは相互に排他的です。オプションを使用する場合は、コマンド名の直後に指定する必要があります。 「オプション」を参照してください。

pid スタックトレースを出力するプロセス ID。プロセスは Java プロセスでなければなりません。マシン上で実行している Java プロセスのリストを取得するには、 jps を使用します。

executable
    コアダンプが生成された Java 実行可能ファイル。

core
    スタックトレースを出力するコアファイル。

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

server-id
    同じリモートホスト上で複数のデバッグサーバーが動作している場合の、オプションの一意 ID。

機能説明
jstack は、指定された Java プロセスまたはコアファイルまたはリモートデバッグサーバーの Java スレッドの Java スタックトレースを出力します。それぞれの Java フレームについて、完全なクラス名、メソッド名、'bci' (バイトコードインデックス) 、および行番号 (入手可能な場合) が出力されます。 -m オプションを指定した場合、 jstack は、すべてのスレッドの Java とネイティブの両方のフレームを 'pc' (プログラムカウンタ) とともに出力します。それぞれのネイティブフレームについて、'pc' に最も近いネイティブシンボル (入手可能な場合) が出力されます。C++ の符号化された (mangled) 名前は復号化 (demangled) されません。C++ 名を復号化するには、このコマンドの出力を c++filt にパイプで渡します。 指定されたプロセスが 64 ビット VM 上で実行されている場合、-J-d64 オプションを指定しなければならない場合があります。次に例を示します。

    jstack -J-d64 -m pid

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

    jstack pid

オプション

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

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

-h  ヘルプメッセージを出力します。

-help
    ヘルプメッセージを出力します。

関連項目

    *   pstack(1)

    *   c++filt(1)

    *   jps

    *   jsadebugd

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