外部スタックトレースを分析する
デッドロックや応答しない UI などの問題を調査するために、他のユーザーが受け取った例外を分析したい場合があります。
IntelliJ IDEA を使用すると、例外スタックトレースまたは 完全なスレッドダンプを解読して表示できます。 表示中に、 実行 または デバッグ ツールウィンドウから取得したかのように、使用してソースコードに移動できます。
ZKM-Unscramble プラグインをインストールする
この機能は、プラグインに依存しています。プラグインをインストールして有効にしてください。
Ctrl+Alt+S を押して設定を開き、 を選択します。
Marketplace タブを開き、 ZKM-Unscramble プラグインを見つけて、 インストール をクリックします(プロンプトが表示されたら IDE を再起動します)。
開いた スタックトレースの分析 ダイアログで、外部スタックトレースまたはスレッドダンプを スタックトレースをここに記述する: テキスト領域に貼り付けます。
スタックトレースのスクランブルを解除するかどうかを指定します。
これを行うには、 スタックトレースを解読する(U) チェックボックスを選択し、目的のアンスクランブラーとログファイルを選択します。
一部のソフトウェア(バグトラッカーやメールクライアントなど)で処理した後、スタックトレーステキストが破損している(行が切り取られている、折り返されている、長すぎるなど)場合は、 標準化する(N) をクリックします。
対応する dSYM ファイルでディレクトリを明示的に指定する場合は、 追加のディレクトリを使用して、不足している dSYM を検索する チェックボックスを選択し、フィールドに目的のディレクトリを入力するか、ファイルシステムから選択します。
OK をクリックします。 スタックトレースが 実行ツールウィンドウに表示されます。
問題の原因となっているコードに移動するには、必要なスタックトレース行までスクロールしてソースファイルへのリンクをクリックします。 ファイルがエディターで開きます。

スレッド名の近くにあるアイコンは、スレッドの状態を示します。
アイコン | 説明 |
|---|---|
実行中 / アクティブ – スレッドがアクティブにコードを実行しているデフォルトの状態 | |
(Kotlin コルーチンの場合)実行中 – コルーチンがコードをアクティブに実行している | |
スリープ – スレッドが | |
キャリアスレッド – 現在仮想スレッド、または 作成 / 不明状態のコルーチンを実行しているプラットフォームスレッド | |
| 待機中 – スレッドがオブジェクトモニターで待機しているとき、またはコルーチンが中断されているときに発生します |
ソケット – スレッドがネットワーク I/O を実行しているときに発生します | |
I/O – スレッドが非ネットワーク I/O 操作を実行しているときに発生します | |
| EDT(イベントディスパッチスレッド) – Swing アプリケーションの UI スレッド。 |
実行 ツールウィンドウ内の一部の呼び出しには点線の下線が表示されます。 これらの呼び出しは try ブロック内で発生し、チェック例外をスローする可能性があります。

スタックトレースの分析ダイアログ
このダイアログを使用して、外部アプリケーション用の移動可能なコンソールスタックトレースにアクセスします。 このスタックトレースの各メッセージから、報告された問題の原因となっているソースコードに直接移動できます。
項目 | 説明 |
|---|---|
スタックトレースを解読する(U) | ソースコードがスクランブルされている場合は、このチェックボックスを選択して外部スタックトレースを解読します。 |
解読ツール(S) | ここでは、アンスクランブラーツールを選択できます。 IntelliJ IDEA には、Zelix Klass Master のアンスクランブラープラグインが付属しています。 他の難読化ツールで処理中のコードのスタックトレースを解読する独自のプラグインを開発することができます。 |
ログファイル(L) | スクランブラーログファイルの場所を指定します。 |
スタックトレースまたは完全なスレッドダンプをここに配置してください | 外部スタックトレースまたはスレッドダンプをここに貼り付けます。 |
IntelliJ IDEA 以外でクリップボードにコピーされたスレッドダンプを自動的に検出して分析する | このチェックボックスを選択すると、IntelliJ IDEA はクリップボードの内容を監視して分析します。 このチェックボックスは一度のみ選択でき、IntelliJ IDEA に切り替えるたびにクリップボードがスキャンされます。 スタックトレースのようなものがクリップボードにコピーされると、IntelliJ IDEA はこのスタックトレースを対応するツールウィンドウに表示します。 |
過去 <this_many> 日間に変更されたファイルをハイライトする | スタックトレースの最後の変更を確認する期間を指定するには、このチェックボックスを選択します。 既定の期間は 31 日間に設定されています。 |
標準化する(N) | 一部のソフトウェア(バグトラッカーやメールクライアントなど)で処理した後、スタックトレーステキストが破損している(行が切り取られている、折り返されている、長すぎるなど)場合は、このボタンをクリックして通常のスタックトレース構造を復元します。 |