Maven和Eclipse使用的Checkstyle配置

时间:2018-10-20 21:16:11

标签: eclipse maven checkstyle

我尝试在Maven和Eclipse中使用相同的Checkstyle配置文件。模块SuppressionCommentFilter在Eclipse中按预期工作,但是Maven报告  不允许TreeWalker作为SuppressionCommentFilter的父级 如果我将其从TreeWalker移至Checker,错误将消失,但Checkstyle不会处理忽略注释。我在Eclipse中使用了Checkstyle 8.12,但没有找到在Maven中使用6.18以外的方法。由于此模块自3.5以来一直是Checkstyle的一部分,所以我不认为这可能是问题所在。有什么建议吗?

<module name="Checker">
<property name="severity" value="warning" />
<module name="TreeWalker">
    <property name="tabWidth" value="4" />
    <module name="SuppressionCommentFilter" />

Mark询问外观如何,所以这是这段代码。

            <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-checkstyle-plugin</artifactId>
            <version>3.0.0</version>
            <executions>
                <execution>
                    <id>verify-style</id>
                    <phase>process-classes</phase>
                    <goals>
                        <goal>check</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>

除了
之外,pom和Checkstyle配置文件都可以正常工作      如果它是Treewalker的子代,我会从Maven插件得到错误,但不会从Eclipse插件得到错误,但是我只能让它与Eclipse插件一起使用。

2 个答案:

答案 0 :(得分:0)

似乎您已将checkstyle定义为依赖项而不是插件。

使用Apache Maven Checkstyle上的指南,我可以将checkstyle用于个人项目。这是我的plugins的{​​{1}}部分的摘录:

pom.xml
GitHub上的

Maskime说:

  

亲爱的读者,如果您像我一样在这里用Google搜索,解决方案是   将<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-checkstyle-plugin</artifactId> <version>3.0.0</version> <executions> <execution> <id>verify-style</id> <phase>process-classes</phase> <goals> <goal>check</goal> </goals> </execution> </executions> <configuration> <logViolationsToConsole>true</logViolationsToConsole> <configLocation>yourcheckstylexmlhere.xml</configLocation> </configuration> </plugin> 移动到   <module name="SuppressionCommentFilter"/>模块。

我已经尝试过使用您正在使用的版本进行此修复,并且不再显示错误。

答案 1 :(得分:0)

  

我在Eclipse中使用Checkstyle 8.12,但未找到在Maven中使用6.18以外的方法

您必须重写maven中的依赖关系以引入Checkstyle的较新版本。默认情况下,maven插件将仅使用6.18,但可以被较新版本覆盖。

请参见https://maven.apache.org/plugins/maven-checkstyle-plugin/examples/upgrading-checkstyle.html