Eclipse Checkstyle Plugin показывает разные результаты, которые maven-checkstyle-plugin - PullRequest
0 голосов
/ 05 октября 2018

Недавно я пытаюсь настроить Checkstyle на Jenkins (который использует результаты maven checkstyle).Моя проблема в том, что контрольный стиль затмения показывает различное количество нарушений контрольного стиля.Я использую один и тот же XML-файл с правилами checkstyle для maven и eclipse.

Eclipse Checkstyle Plugin 8.12.0 - ~ 500 нарушений maven-checkstyle-plugin 3.0.0 - более 5000 нарушений

Для ошибок затмения я вижу в основном NPath Complexity и предупреждение «String появляется X раз в файле».

Для Maven chekstyle 2000 предупреждениями являются «Строка имеет завершающие пробелы» (в eclipse такого предупреждения нет).Есть также много предупреждений ConstantNameCheck, RegexpSinglelineJavaCheck, VisibilityModifierCheck.

Я предполагаю, что оба плагина работают по-разному, но есть ли способ заставить их отображать похожие предупреждения?

Например: в простом модуле проекта я получил 4 нарушения затмения для сложности NPath.Для файла TestHandler.java он показывает: «Сложность NPath 13 разрешена - это 8».В Maven я получил 6 нарушений, и большинство из них разные.Только один говорит, что одна и та же фраза в TestHandler.java «Сложность NPath - 13, разрешено - это 4».

Вот так выглядит проверка целостности в xml, которую используют оба стиля:

</module>
<module name="CyclomaticComplexity">
  <property name="max" value="6" />
</module>
<module name="NPathComplexity">
  <property name="max" value="8" />
</module>

Я запускаю Maven Chestyle, просто используя mvn clean install checkstyle: checkstyle или на jenkis.Я использую самые основные конфигурации плагинов Maven в POM.При необходимости может быть предоставлена ​​дополнительная информация.

1 Ответ

0 голосов
/ 11 октября 2018

Я сделал изменения в основной помпе, как вы предложили.Я также удалил нарушения Javadoc из файла checkstyle.xml.В настоящее время на затмении я получил ~ 510, на Intelij ~ 3100 и в Maven checkstyle ~ 3800. Как я уже проверял, существуют различия в нарушениях по каждому из этих трех.Это фрагмент моей конфигурации POM для checkstyle:

    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-checkstyle-plugin</artifactId>
      <version>3.0.0</version>
      <dependencies>
        <dependency>
          <groupId>com.puppycrawl.tools</groupId>
          <artifactId>checkstyle</artifactId>
          <version>6.18</version>
        </dependency>
      </dependencies>
      <executions>
      <execution>
      <id>validate</id>
      <phase>validate</phase>
      <configuration>
        <configLocation>common\code-style\checkstyle2.xml</configLocation>
        <encoding>UTF-8</encoding>
        <consoleOutput>true</consoleOutput>
        <failsOnError>true</failsOnError>
      </configuration>
        <goals>
          <goal>check</goal>
        </goals>
      </execution>
      </executions>
    </plugin> 
...