この質問は多くの人から何度も聞かれ、多くの解決策がすでに提供されていることに同意します。ただし、多数のリンクを参照した後、ソナーでエマレポートを表示できないことは私を夢中にさせています. 以下は、私がやろうとしていることの説明です。
私の Java プロジェクトは、マルチ モジュールの Maven プロジェクトです。EMMA をコード カバレッジ ツールとして使用し、Jenkins を使用してプロジェクトをビルドし、Sonar を使用してコードを分析し、Jenkins ソナー プラグインを使用してビルド ジョブ用に Sonar を構成しました。ここまでは、ストーリーが素晴らしいです。Sonar 分析中に Emma によって生成されたレポートを再利用しようとすると、問題が発生します。ビルド中の Sonar 分析ログには明らかなエラーはありませんが、Sonar プロジェクト ダッシュボードのカバレッジ レポートは 0% です。以下は、Jenkins ビルド ジョブの Sonar 構成セクションで提供する構成データです。
-Dsonar.core.codeCoveragePlugin=emma
-Dsonar.emma.reportPath=/target
-Dsonar.dynamicAnalysis=reuseReports
-Dsonar.surefire.reportsPath=/target/surefire-reports
ソナーバージョン:3.0
Emma プラグインのバージョン:
emma-maven-plugin : 1.0-alpha-2
Sonar Emma Plugin :1.0.1
emma : 2.0.5312
Maven ビルドは、個々のモジュールのターゲット フォルダーに coverage.em ファイルを生成します。coverage.ec ファイルは生成されません。Sonar には、coverage.ec ファイルと coverage.em ファイルの両方が必要ですか?
coverage.es、html、txt、xml ファイルは、プロジェクトのビルド ディレクトリ/emma フォルダーに生成されます。
モジュールのソナー分析ログは次のようになります。
[INFO] [15:06:02.829] Sensor org.sonar.plugins.emma.EmmaSensor@bfc33...
[WARN] [15:06:02.844] Resource will be ignored in next Sonar versions, index is locked: com.mycompany.mypackage.tests.util.Activator
[INFO] [15:06:02.876] Sensor org.sonar.plugins.emma.EmmaSensor@bfc33 done: 47 ms
上記のログを見ると、Sonar は実際に生成された Emma レポートで何かを行っているのに、Sonar プロジェクト ダッシュボードには何も表示されていないと思われます。
どこが間違っているのか、またはこれを機能させるために何をする必要があるのか教えてください。