2

特定のルールの違反が 3000 件を超えた場合に、pmd に失敗を報告させる方法はありますか。CyclomaticComplexity を 1000 違反未満にし、ExcessivePublicCount を 2000 未満にする必要があります。違反の数を取得する方法があることは知っていますが、CC の量を 800 に減らして増加させると、合計数は必要ありません。 EPC の数を 2200 に変更すると、変更がなかったかのように表示されます。ファイルごとに 1 つずつ、2 つのルールセットを作成せずに、異なる pmd ターゲットで実行するのが、これを行うためのより良い方法です。

すべての違反のリストだけでなく、タイプごとの違反の数 (IE: 500 - CC および 200 - EPC) を pmd で取得する方法はありますか? ありがとう。

4

1 に答える 1

0

1つの考え-PMDに結果をXMLで出力させることができます。次に、これらのカウントの出力を後処理する XPath 式を記述できます。

純粋な PMD では、ルールをラップ/拡張し、静的変数で違反を追跡するルールを作成できると思いました。ただし、複数の CPU コアで実行する場合、これは機能しないため、この方法は使用しません。もう 1 つの制限は、失敗の数がわからないことです。2001 番目のエラーでは失敗する可能性がありますが、最後のエラーでは失敗しません。

于 2011-04-22T00:31:00.913 に答える