web-dev-qa-db-ja.com

IntelliJ-「実行」ビューで失敗した単体テストからコンパイル済みクラスではなくソースにジャンプする方法

IntelliJでJUnitテストを実行し、そのうちの1つが失敗した場合、テストをダブルクリックして(または右クリックして[ソースにジャンプ]または[ソースを表示]を選択して)、失敗したテストのソースコードにジャンプします。 ")結果ビュー([実行]ビューの失敗したテストのリスト)。ただし、この機能は常に正しく機能するとは限りません。時々、ソースコードが表示されたり、テストのコンパイルされた「.class」ファイルのみがエディタウィンドウに表示されたりします。失敗したテストをダブルクリックした後、エディターウィンドウで「.class」ファイルではなくソースコード(「.Java」ファイル)を常に表示したいと思います。そのための1つの解決策は、テストウィンドウの「.class」ファイルが表示されているエディターウィンドウの[Attach Sources ...]をクリックすることです。ただし、すべてのテストファイルに対して実行する必要があり、すべてのテストに対して繰り返し実行するにはかなりの時間がかかります。私の意見では、IntelliJはプロジェクトに存在するため、ソースコードを自動的に検出するはずです(それは自分のクラスであり、そのソースコードはプロジェクト内にあり、このテストはプロジェクトビューから実行しますが、ソースコードを含むクラスが表示されます)。 IntelliJを構成して、実行するすべての単体テストのソースコードを自動的に検出する方法を教えてください。

「.Java」ファイルの代わりに表示される「.class」ファイルは、Mavenによって構築されたjarファイルに含まれています。

25
krm

プロジェクトビュー([ファイル]> [プロジェクト構造])で外部ライブラリに移動し、.classファイルを含むjarを見つけて右クリック(またはF4)できるはずです。 Open Library Settingsが表示されます。そのダイアログから、srcフォルダーをライブラリーに添付できます。 enter image description here

16
Alper Akture

今日、この問題が発生しました。私にとっての解決策は、メインのpom.xmlを右クリックし、次にmavenを右クリックして、再インポートすることでした。

3
gohiluk

同様の問題がありました。私の場合、それは不正なモジュール構成が原因でした。基本的に、Javaファイルを含むソースフォルダーが対応するモジュールのSourcesタブに追加されていることを確認する必要があります。

これを行うにはProject Structure (Ctrl + Alt + Shift + S)に移動し、Modulesを選択します。対応するモジュールを選択し、Javaファイルを含むソースフォルダーがSources Foldersに正しく追加されていることを確認します。追加されていない場合は、追加してください。

2
Kuldeep Jain

同様の問題がありました。正しいソースフォルダーをポイントしても問題は解決しませんでしたが、クラスフォルダーをソースコードのルートフォルダーに設定することで問題を解消しました。

enter image description here

2
SSB

Java Mavenプロジェクトにソリューションを追加します。

「プロジェクト設定」から「ライブラリ」を開き、ソースファイルを添付するJava jarを検索して選択します。次に、「+」ボタンをクリックしてソースディレクトリを追加できます。

0
onebraveman