我在我的基目录中创建了一个简单的初始my-checks.xml
文件,可以由intelliJ验证和使用:
<?xml version="1.0"?>
<!DOCTYPE module PUBLIC
"-//Puppy Crawl//DTD Check Configuration 1.3//EN"
"http://checkstyle.sourceforge.net/dtds/configuration_1_3.dtd">
<module name="Checker">
<!--
If you set the basedir property below, then all reported file
names will be relative to the specified directory. See
http://checkstyle.sourceforge.net/5.x/config.html#Checker
<property name="basedir" value="${basedir}"/>
-->
<property name="fileExtensions" value="java, properties, xml"/>
<module name="TreeWalker">
<module name="NeedBraces"/>
</module>
</module>
在基础目录中的pom.xml中,我有以下内容:
<build>
..
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>3.0.0</version>
<executions>
<execution>
<id>validate</id>
<phase>validate</phase>
<configuration>
<configLocation>my-checks.xml</configLocation>
<encoding>UTF-8</encoding>
<consoleOutput>true</consoleOutput>
<failsOnError>true</failsOnError>
<linkXRef>false</linkXRef>
</configuration>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin>
..
</build>
现在,我可以运行mvn clean install
并在checkstyle-checker.xml
文件夹中生成target
。此文件与my-checks.xml
相同。大!到目前为止一直很好!!
现在我运行mvn checkstyle:check
...
目标运行时似乎checkstyle-checker.xml
由sun-checks.xml
交换!!!
如何使用我自己的配置???
答案 0 :(得分:0)
在我的maven项目中,我成功使用了以下内容:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>3.1.0</version>
<configuration>
<configLocation>checkstyle-config.xml</configLocation>
<checkstyleXmlOutput>true</checkstyleXmlOutput>
<checkstyleXmlOutputDirectory>target/site</checkstyleXmlOutputDirectory>
<xmlOutput>true</xmlOutput>
<failsOnError>false</failsOnError>
<includeTestSourceDirectory>true</includeTestSourceDirectory>
</configuration>
</plugin>
所以我的configuration
在executions
部分之外。