2

我在我的基本目录中创建了一个简单的初始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

如何使用自己的配置???

4

1 回答 1

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部分之外。

于 2019-08-07T10:29:23.290 回答