PMD сообщает о более чем X нарушениях - PullRequest
2 голосов
/ 02 апреля 2011

Есть ли способ получить сообщение об ошибке pmd, если я превышаю 3000 нарушений определенного правила. Я хочу, чтобы CyclomaticComplexity был менее 1000 нарушений, а ExcessivePublicCount - менее 2000. Я знаю, что есть способ получить количество нарушений, но я не хочу, чтобы общее количество было, потому что если я уменьшу количество CC до 800 и увеличу число EPC до 2200, это будет выглядеть так, как будто никаких изменений не произошло. Без создания 2 наборов правил, по одному для каждого файла, а затем с другой целью pmd, есть лучший способ сделать это.

Есть ли способ, которым pmd может дать мне количество нарушений для каждого типа (т. Е. 500 - CC и 200 - EPC), а не просто список всех нарушений? Спасибо.

1 Ответ

0 голосов
/ 22 апреля 2011

Одна мысль - PMD может выводить результаты в формате XML.Затем вы можете написать выражение XPath для последующей обработки результатов этих подсчетов.

В чистом PMD я предположил, что вы могли бы написать правило, которое упаковывает / расширяет их и отслеживает нарушения в статической переменной.Это не сработает, если вы используете несколько процессорных ядер, поэтому я бы не пошел по этому пути.Другое ограничение заключается в том, что вы не будете знать, сколько существует сбоев.Вы можете потерпеть неудачу в 2001-й ошибке, но не в последней ошибке.

...