Как заставить sonar отображать небольшие дубликаты кода на java?

#java #sonarqube #pmd #code-duplication

#java #sonarqube #pmd #дублирование кода

Вопрос:

Я хочу видеть дублирование кода в отчете sonar, и я более строг, чем sonar: я хочу установить ограничение на 5 токенов. Как оказалось, ограничение не устанавливается с помощью java-анализатора sonar. Итак, я использую PMD, который успешно обнаруживает дублирования кода. Есть даже XML-отчет на target/cpd.xml

Я вижу следующее в разделе администрирование sonarcube / общие настройки / внешние анализаторы:

 PMD Report Files
Paths (absolute or relative) to xml files with PMD issues.
Key: sonar.java.pmd.reportPaths
  

Итак, я подумал, что использую это. Но оказывается, что cpd.xml имеет структуру, отличную от pmd.xml .
Я мог бы преобразовать его с помощью xslt, и это будет решением, если нет лучшего.

Вопросы:

  • Могу ли я попросить sonar использовать отчет о дублировании PMD? или
  • Могу ли я попросить sonar использовать отчет о дублировании другого анализатора кода? или
  • Могу ли я попросить sonar соблюдать настройки дублирования кода

Комментарии:

1. Просматривая последнюю документацию (раздел дублирования) , минимальное значение для настроек sonar.cpd.${language}.minimumtokens и sonar.cpd.${language}.minimumLines равно 10.

2. «Для проектов Java фрагмент кода считается дублированным, когда имеется серия из по крайней мере 10 операторов подряд, независимо от количества токенов и строк. Этот порог нельзя переопределить.» Для меня это нехорошо, и даже проверено, что это неправда. community.sonarsource.com/t /…