Как исправить ошибку стиля проверки maven

В настоящее время я просто попытался загрузить и построить, чтобы сделать исходный код Netty. Но когда я попытался запустить команду mvn eclipse:eclipse в исходной папке. Я получил сообщение об ошибке

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-checkstyle-plugin:2.10:check (check-style) on project netty-common: Failed during checkstyle execu
tion: There are 304 checkstyle errors. -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-checkstyle-plugin:2.10:check (check-style) on proj
ect netty-common: Failed during checkstyle execution
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:212)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
        at org.apache.maven.lifecycle.internal.MojoExecutor.executeForkedExecutions(MojoExecutor.java:352)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:197)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116)
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)
        at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
        at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:307)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:106)
        at org.apache.maven.cli.MavenCli.execute(MavenCli.java:863)
        at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:288)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:199)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
        at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
        at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
Caused by: org.apache.maven.plugin.MojoExecutionException: Failed during checkstyle execution
        at org.apache.maven.plugin.checkstyle.CheckstyleViolationCheckMojo.execute(CheckstyleViolationCheckMojo.java:374)
        at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:207)
        ... 24 more
Caused by: org.apache.maven.plugin.checkstyle.CheckstyleExecutorException: There are 304 checkstyle errors.
        at org.apache.maven.plugin.checkstyle.DefaultCheckstyleExecutor.executeCheckstyle(DefaultCheckstyleExecutor.java:218)
        at org.apache.maven.plugin.checkstyle.CheckstyleViolationCheckMojo.execute(CheckstyleViolationCheckMojo.java:365)

Это ошибка плагина checkstyle при проверке кода netty-common проекта.

Я не знаком с этим плагином. Я хочу знать, могу ли я просто игнорировать его, удалив конфигурацию из pom.xml(в). как показано ниже.

<plugin>
        <artifactId>maven-checkstyle-plugin</artifactId>
        <version>2.10</version>
        <executions>
          <execution>
            <id>check-style</id>
            <goals>
              <goal>check</goal>
            </goals>
            <phase>validate</phase>
            <configuration>
              <consoleOutput>true</consoleOutput>
              <logViolationsToConsole>true</logViolationsToConsole>
              <failsOnError>true</failsOnError>
              <failOnViolation>true</failOnViolation>
              <configLocation>io/netty/checkstyle.xml</configLocation>
              <includeTestSourceDirectory>true</includeTestSourceDirectory>
            </configuration>
          </execution>
        </executions>
        <dependencies>
          <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>netty-build</artifactId>
            <version>21</version>
          </dependency>
        </dependencies>
      </plugin>

Любая идея? Спасибо.

Ответ 1

CheckStyle - это модуль maven, который проверяет стиль кода на такие вещи, как вкладки, а не пробелы. Netty использует это для предотвращения ошибок форматирования.

Если вы планируете вносить вклад в Netty, вы НЕ должны удалять плагин, поскольку это, вероятно, означает, что ваш патч никогда не будет применяться.

Если вы просто используете для игры, вы можете удалить этот плагин, так как его единственная цель - проверить установку и не изменять вещи из установки.

Если вы решите сохранить его, вы должны посмотреть в журнале вывода, чтобы узнать, какие ошибки обнаружены, быстро исправить ошибки, см. этот ответ на Мэтью Фарвелл.

  • Щелкните правой кнопкой мыши на java файле в обозревателе пакетов или что-то еще, и выберите "Применить исправления стиля".
  • Нажмите на ошибку в представлении проблем и выберите "Быстрое исправление". Это исправляет проблему.

Ответ 2

Пропустить выполнение стиля проверки с помощью

-Dcheckstyle.skip

Пример

mvn [YOUR_COMMAND] -Dcheckstyle.skip

Ответ 3

В то время как я не знаком с Netty и плагином maven eclipse, я столкнулся с проблемой с плагином maven-checkstyle, создавая pwm.

Это была ошибка:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-checkstyle-plugin:2.17:check (validate) on project pwm: Failed during checkstyle configuration ....

Мое решение (которое также решает многие связанные с maven ошибки btw):

Удалите папку maven .m2, а затем снова создайте проект. В linux-системах папка .m2 обычно находится в вашей домашней папке /home/<username>/.m2

Ответ 4

Если вы только что клонировали репозиторий и сбой сборки, я считаю, что вы используете Windows, и у вас есть проблемы с конфигурацией Git. Установите параметр "core.autocrlf" в "true", повторите клонирование репозитория и повторите попытку.

git config --global core.autocrlf true

Ответ 5

В моем случае я просто попытался выполнить ту же цель, но с опцией -X (включение уровня отладки) и обнаружил, на что жалуется плагин стиля проверки класса. Исправил стиль и снова запустил maven → Построить успех.

Ответ 6

Лучший подход к решению этой проблемы - запустить установку mvn с опцией -X, которая предоставит вам подробную информацию о проблемах стиля в классе. Вы можете исправить класс соответственно.