如何修复maven检查样式错误
How to fix the maven check style error
目前我只是尝试下载并构建 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)
验证代码netty-common
项目时checkstyle插件出错。
我不熟悉这个插件。我想知道我是否可以通过从 pom.xml(in the ) 中删除配置来忽略它。如下所示。
<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>
有什么想法吗?谢谢
CheckStyle 是 maven 的一个模块,用于检查代码的样式,例如制表符而不是空格。 Netty 正在使用它来防止基本的格式错误。
如果您打算为 Netty 做贡献,您不应该删除插件,因为这可能意味着您的补丁永远不会应用。
如果您只是用来玩玩,您可以随意删除该插件,因为它的唯一目的是验证安装,而不是更改安装内容。
如果您选择保留它,您应该查看输出日志以查看它检测到的错误,以快速修复错误,请参阅this answer by Matthew Farwell。
- Right click on the java file in Package Explorer or whatever, and select 'Apply Checkstyle Corrections'.
- Click on the error in the problems view, and select 'Quick fix'. This corrects the problem.
使用
跳过检查样式执行
-Dcheckstyle.skip
例
mvn [YOUR_COMMAND] -Dcheckstyle.skip
如果您刚刚克隆了存储库并且构建失败,我相信您正在使用 Windows 并且您的 Git 配置有问题。请将 'core.autocrlf' 选项设置为 'true',重新克隆存储库,然后重试。
git config --global core.autocrlf true
虽然我既不熟悉 Netty 也不熟悉 maven eclipse 插件,但在构建 pwm 项目时我确实遇到了 maven-checkstyle-plugin 的问题。
这是错误:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-checkstyle-plugin:2.17:check (validate) on project pwm: Failed during checkstyle configuration ....
我的解决方案(顺便说一句,它也解决了许多与 Maven 相关的错误):
删除maven的.m2
文件夹,然后重新构建项目。
在 linux 系统上,.m2 文件夹通常位于您的主文件夹中 /home/<username>/.m2
在我的例子中,我只是尝试执行相同的目标,但使用 -X 选项(启用调试级别)并发现 class 检查样式插件抱怨的是什么。更正样式并再次 运行 maven -> 构建成功。
解决此问题的最佳方法是 运行 带 -X 选项的 mvn 安装,它将为您提供有关 class 中样式问题的详细信息。您可以相应地修复 class。
我通过删除 pom.xml 中的检查样式配置并重建 maven 解决了这个问题。当我后来重新插入和构建时,它没有错误地工作。
在 Linux OS 我使用 dos2unix.
解决了
cd presto;
find . -type f -exec dos2unix {} \;
我遇到了同样的问题,我通过在我的 pom 文件中添加以下内容来禁用 pom 的 checkstyle,它对我有用。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<executions>
<execution>
<id>checkstyle-validation</id>
<phase>none</phase>
</execution>
</executions>
</plugin>
只需执行“mvn spotless:apply”,对我有用
目前我只是尝试下载并构建 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)
验证代码netty-common
项目时checkstyle插件出错。
我不熟悉这个插件。我想知道我是否可以通过从 pom.xml(in the ) 中删除配置来忽略它。如下所示。
<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>
有什么想法吗?谢谢
CheckStyle 是 maven 的一个模块,用于检查代码的样式,例如制表符而不是空格。 Netty 正在使用它来防止基本的格式错误。
如果您打算为 Netty 做贡献,您不应该删除插件,因为这可能意味着您的补丁永远不会应用。
如果您只是用来玩玩,您可以随意删除该插件,因为它的唯一目的是验证安装,而不是更改安装内容。
如果您选择保留它,您应该查看输出日志以查看它检测到的错误,以快速修复错误,请参阅this answer by Matthew Farwell。
- Right click on the java file in Package Explorer or whatever, and select 'Apply Checkstyle Corrections'.
- Click on the error in the problems view, and select 'Quick fix'. This corrects the problem.
使用
跳过检查样式执行-Dcheckstyle.skip
例
mvn [YOUR_COMMAND] -Dcheckstyle.skip
如果您刚刚克隆了存储库并且构建失败,我相信您正在使用 Windows 并且您的 Git 配置有问题。请将 'core.autocrlf' 选项设置为 'true',重新克隆存储库,然后重试。
git config --global core.autocrlf true
虽然我既不熟悉 Netty 也不熟悉 maven eclipse 插件,但在构建 pwm 项目时我确实遇到了 maven-checkstyle-plugin 的问题。
这是错误:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-checkstyle-plugin:2.17:check (validate) on project pwm: Failed during checkstyle configuration ....
我的解决方案(顺便说一句,它也解决了许多与 Maven 相关的错误):
删除maven的.m2
文件夹,然后重新构建项目。
在 linux 系统上,.m2 文件夹通常位于您的主文件夹中 /home/<username>/.m2
在我的例子中,我只是尝试执行相同的目标,但使用 -X 选项(启用调试级别)并发现 class 检查样式插件抱怨的是什么。更正样式并再次 运行 maven -> 构建成功。
解决此问题的最佳方法是 运行 带 -X 选项的 mvn 安装,它将为您提供有关 class 中样式问题的详细信息。您可以相应地修复 class。
我通过删除 pom.xml 中的检查样式配置并重建 maven 解决了这个问题。当我后来重新插入和构建时,它没有错误地工作。
在 Linux OS 我使用 dos2unix.
解决了cd presto;
find . -type f -exec dos2unix {} \;
我遇到了同样的问题,我通过在我的 pom 文件中添加以下内容来禁用 pom 的 checkstyle,它对我有用。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<executions>
<execution>
<id>checkstyle-validation</id>
<phase>none</phase>
</execution>
</executions>
</plugin>
只需执行“mvn spotless:apply”,对我有用