Maven 2 检查样式不起作用
我对maven和chekstyle不熟悉,所以需要问一些问题。。。我想在基于maven的项目中使用checkstyle,因此在我的Maven 2 检查样式不起作用,maven-2,checkstyle,Maven 2,Checkstyle,我对maven和chekstyle不熟悉,所以需要问一些问题。。。我想在基于maven的项目中使用checkstyle,因此在我的pom.xml中添加了依赖项 <dependency> <groupId>checkstyle</groupId> <artifactId>checkstyle</artifactId> <version>2.4</version> </dependency&g
pom.xml
中添加了依赖项
<dependency>
<groupId>checkstyle</groupId>
<artifactId>checkstyle</artifactId>
<version>2.4</version>
</dependency>
代码检查
代码检查
2.4
我还添加了plugin标签中的条目:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>2.4</version>
<configuration>
<enableRulesSummary>true</enableRulesSummary>
<configLocation>checkstyle.xml</configLocation>
</configuration>
</plugin>
org.apache.maven.plugins
maven checkstyle插件
2.4
真的
checkstyle.xml
但是当我使用命令mvncleaninstall
运行maven构建时,checkstyle什么都不做。由于我的系统中还没有任何checkstyle.xml
,它不应该抱怨我的错误吗
我还缺少什么配置
我想在基于maven的项目中使用checkstyle,因此在pom.xml中添加了依赖项(…)
您无需添加此依赖项,只需声明插件(插件声明其自身的依赖项)
(…)但是当我使用命令mvn clean install运行maven build时,checkstyle什么都不做
是的,因为您只声明了插件,您没有将目标绑定到生命周期阶段,所以正常构建不会触发checkstyle插件。如果希望在构建过程中触发checkstyle:check
,则需要在执行过程中声明check
目标(默认情况下,它将自身绑定到verify
阶段)。大概是这样的:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<!-- Lock down plugin version for build reproducibility -->
<version>2.5</version>
<configuration>
<consoleOutput>true</consoleOutput>
<configLocation>checkstyle.xml</configLocation>
...
</configuration>
<executions>
<execution>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin>
org.apache.maven.plugins
maven checkstyle插件
2.5
真的
checkstyle.xml
...
检查
现在,调用任何阶段,包括verify
都将调用checkstyle
由于我的系统中还没有任何checkstyle.xml,它不应该向我抱怨错误吗
它会。。。调用时(由mvn checkstyle:check显式调用,或者如果您按照建议修改设置,则作为构建的一部分进行调用)。您还可以查看将checkstyle、PMD、FindBugs和其他一些静态分析器组合在一起并预配置它们的方法