检查样式:检查

全名:

org.apache.maven.plugins:maven-checkstyle-plugin:2.14:check

说明:

执行 Checkstyle 分析并将违规或违规计数输出到控制台,可能会导致构建失败。它也可以配置为重新使用早期的分析。

属性:

  • 需要执行一个 Maven 项目。
  • 需要对范围内的工件进行依赖解析:test。
  • 目标是线程安全的并支持并行构建。
  • 默认绑定到生命周期阶段:验证。

必需参数

姓名 类型 自从 描述
包括资源 布尔值 2.11 是否将 Checkstyle 应用于资源目录。
默认值为:true。
用户属性是:checkstyle.includeResources。
包括测试资源 布尔值 2.11 是否将 Checkstyle 应用于测试资源目录。
默认值为:true。
用户属性是:checkstyle.includeTestResources。
包括 细绳 - 指定要用于 Checkstyle 的源文件的名称过滤器。
默认值为:**\/*.java。
用户属性是:checkstyle.includes。
资源包括 细绳 2.11 指定检查资源时要用于 Checkstyle 的文件的名称过滤器。
默认值为:**/*.properties。
用户属性是:checkstyle.resourceIncludes。

可选参数

姓名 类型 自从 描述
缓存文件 细绳 - 指定用于在连续运行中加速 Checkstyle 的缓存文件。
默认值为:${project.build.directory}/checkstyle-cachefile。
检查样式规则 丛配置 2.12 通过使用这个属性,你可以直接在这个 pom.xml 中指定整个 Checkstyle 规则。
<plugin>
  ...
  <configuration>
    <checkstyleRules>
      <module name="Checker">
        <module name="FileTabCharacter">
          <property name="eachLine" value="true" />
        </module>
        <module name="TreeWalker">
          <module name="EmptyBlock"/>
        </module>
      </module>
    </checkstyleRules>
  </configuration>
  ...

配置位置 细绳 2.5

指定要使用的 XML 配置的位置。

潜在值是文件系统路径、URL 或类路径资源。此参数期望位置的内容符合规则集的 xml 格式(Checkstyle Checker 模块)配置。

此参数被解析为资源、URL 和文件。如果成功解析,配置的内容将被复制到 ${project.build.directory}/checkstyle-configuration.xml 文件中,然后作为配置传递给 Checkstyle。

有 3 个预定义的规则集。

  • config/sun_checks.xml:Sun 检查。
  • config/turbine_checks.xml:涡轮检查。
  • config/maven_checks.xml:Maven 源代码检查。

默认值为:config/sun_checks.xml。
用户属性是:checkstyle.config.location。
控制台输出 布尔值 - 将错误输出到控制台。
默认值为:false。
用户属性是:checkstyle.consoleOutput。
编码 细绳 2.2 读取源文件时使用的文件编码。如果未设置属性project.build.sourceEncoding,则使用平台默认编码。注意:此参数始终覆盖Checkstyle 的TreeWalker模块中的属性字符集。默认值为:${project.build.sourceEncoding}。用户属性是:编码。

排除 细绳 - 指定要为 Checkstyle 排除的源文件的名称过滤器。
用户属性是:checkstyle.excludes。
违规失败 布尔值 - 违规构建失败。目标在记录违规后检查违规(如果logViolationsToConsole为“真”)。将此与failedOnError进行比较,后者在检查输出日志之前立即使构建失败。
默认值为:true。
用户属性是:checkstyle.failOnViolation。
失败错误 布尔值 - 如果这是真的,并且 Checkstyle 报告了任何违规或错误,则在运行 Checkstyle 之后,在检查logViolationsToConsole之前,构建会立即失败。如果您想使用logViolationsToConsole,请使用 failOnViolation代替它。
默认值为:false。
标头位置 细绳 2.0-beta-2

指定 Checkstyle 可以使用的许可证文件(也称为头文件)的位置,以验证源代码是否具有正确的许可证头。

您需要在 Checkstyle xml 配置中使用 ${checkstyle.header.file} 来引用此头文件的名称。

例如:

<module name="RegexpHeader"> <property name="headerFile" value="${checkstyle.header.file}"/> </module>


默认值为:LICENSE.txt。
用户属性是:checkstyle.header.file。
包括TestSourceDirectory 布尔值 2.2 包含或不包含用于 Checkstyle 的测试源目录。
默认值为:false。
logViolationsToConsole 布尔值 2.3 将检测到的违规输出到控制台。
默认值为:true。
用户属性是:checkstyle.console。
maxAllowedViolations 整数 2.3 允许的最大违规次数。仅当违规次数超过此限制时,执行才会失败。
默认值为:0。
用户属性是:checkstyle.maxAllowedViolations。
输出文件 文件 - 指定保存 Checkstyle 输出的路径和文件名。输出文件的格式由 outputFileFormat参数确定。
默认值为:${project.build.directory}/checkstyle-result.xml。
用户属性是:checkstyle.output.file。
输出文件格式 细绳 - 指定写入输出文件时要使用的输出格式。有效值为“ plain ”和“ xml ”。
默认值为:xml。
用户属性是:checkstyle.output.format。
属性位置 细绳 2.5

指定属性文件的位置。

这个参数被解析为 URL,文件然后资源。如果成功解析,属性位置的内容将被复制到 ${project.build.directory}/checkstyle-checker.properties 文件中,然后再传递给 Checkstyle 进行加载。

propertiesLocation的内容将提供给 Checkstyle 用于指定 xml 配置中的参数值(在configLocation 参数中指定)。


用户属性是:checkstyle.properties.location。
财产扩张 细绳 - 允许指定原始属性扩展信息。
资源排除 细绳 2.11 指定检查资源时要为 Checkstyle 排除的文件的名称过滤器。
用户属性是:checkstyle.resourceExcludes。
规则文件 文件 - 内联 Checkstyle 规则的转储文件
默认值为:${project.build.directory}/checkstyle-rules.xml。
用户属性是:checkstyle.output.rules.file。
跳过 布尔值 2.2 跳过整个检查。
默认值为:false。
用户属性是:checkstyle.skip。
跳过执行 布尔值 2.5 跳过 Checkstyle 执行只会扫描输出文件。
默认值为:false。
用户属性是:checkstyle.skipExec。
源目录 列表 2.13 指定要用于 Checkstyle 的源目录的位置。
默认值为:${project.compileSourceRoots}。
源目录 文件 - 已弃用。而是使用sourceDirectories
抑制文件表达式 细绳 2.1 要在抑制文件的属性中使用的键。
默认值为:checkstyle.suppressions.file。
用户属性是:checkstyle.suppression.expression。
抑制位置 细绳 2.0-beta-2

指定要使用的抑制 XML 文件的位置。

此参数被解析为资源、URL 和文件。如果成功解决,则将抑制 XML 的内容复制到 ${project.build.directory}/checkstyle-suppressions.xml 文件中,然后再传递给 Checkstyle 进行加载。

有关将可用于您的 Checkstyle 配置的属性,请参阅suppresssFileExpression 。


用户属性是:checkstyle.suppressions.location。
测试源目录 列表 2.13 指定要用于 Checkstyle 的测试源目录的位置。
默认值为:${project.testCompileSourceRoots}。
测试源目录 文件 2.2 已弃用。而是使用testSourceDirectories
使用文件 文件 - 如果为null,Checkstyle 插件将在标准输出上显示违规。否则,将创建一个包含违规的文本文件。
违规忽略 细绳 2.13 违规可忽略。这是一个逗号分隔的列表,每个值是规则名称、规则类别或规则类的 java 包名称。
用户属性是:checkstyle.violation.ignore。
违规严重性 细绳 2.2 被视为违规的最低严重性级别。有效值为“ error ”、“ warning ”和“ info ”。
默认值为:错误。
用户属性是:checkstyle.violationSeverity。

参数详情

缓存文件:

指定用于在连续运行中加速 Checkstyle 的缓存文件。
  • 类型:java.lang.String
  • 要求:否
  • 默认值:${project.build.directory}/checkstyle-cachefile

检查样式规则:

通过使用这个属性,你可以直接在这个 pom.xml 中指定整个 Checkstyle 规则。
<plugin>
  ...
  <configuration>
    <checkstyleRules>
      <module name="Checker">
        <module name="FileTabCharacter">
          <property name="eachLine" value="true" />
        </module>
        <module name="TreeWalker">
          <module name="EmptyBlock"/>
        </module>
      </module>
    </checkstyleRules>
  </configuration>
  ...
  • 类型:org.codehaus.plexus.configuration.PlexusConfiguration
  • 从: 2.12
  • 要求:否

配置位置:

指定要使用的 XML 配置的位置。

潜在值是文件系统路径、URL 或类路径资源。此参数期望位置的内容符合规则集的 xml 格式(Checkstyle Checker 模块)配置。

此参数被解析为资源、URL 和文件。如果成功解析,配置的内容将被复制到 ${project.build.directory}/checkstyle-configuration.xml 文件中,然后作为配置传递给 Checkstyle。

有 3 个预定义的规则集。

  • config/sun_checks.xml:Sun 检查。
  • config/turbine_checks.xml:涡轮检查。
  • config/maven_checks.xml:Maven 源代码检查。
  • 类型:java.lang.String
  • 从: 2.5
  • 要求:否
  • 用户属性:checkstyle.config.location
  • 默认值:config/sun_checks.xml

控制台输出:

将错误输出到控制台。
  • 类型:布尔值
  • 要求:否
  • 用户属性:checkstyle.consoleOutput
  • 默认值:假

编码:

读取源文件时使用的文件编码。如果未设置属性project.build.sourceEncoding,则使用平台默认编码。注意:此参数始终覆盖Checkstyle 的TreeWalker模块中的属性字符集。
  • 类型:java.lang.String
  • 从: 2.2
  • 要求:否
  • 用户属性:编码
  • 默认值:${project.build.sourceEncoding}

不包括:

指定要为 Checkstyle 排除的源文件的名称过滤器。
  • 类型:java.lang.String
  • 要求:否
  • 用户属性:checkstyle.excludes

失败违规:

违规构建失败。目标在记录违规后检查违规(如果logViolationsToConsole为“真”)。将此与failedOnError进行比较,后者在检查输出日志之前立即使构建失败。
  • 类型:布尔值
  • 要求:否
  • 用户属性:checkstyle.failOnViolation
  • 默认值:真

失败错误:

如果这是真的,并且 Checkstyle 报告了任何违规或错误,则在运行 Checkstyle 之后,在检查logViolationsToConsole之前,构建会立即失败。如果您想使用logViolationsToConsole,请使用 failOnViolation代替它。
  • 类型:布尔值
  • 要求:否
  • 默认值:假

标头位置:

指定 Checkstyle 可以使用的许可证文件(也称为头文件)的位置,以验证源代码是否具有正确的许可证头。

您需要在 Checkstyle xml 配置中使用 ${checkstyle.header.file} 来引用此头文件的名称。

例如:

<module name="RegexpHeader"> <property name="headerFile" value="${checkstyle.header.file}"/> </module>

  • 类型:java.lang.String
  • 自:2.0-beta-2
  • 要求:否
  • 用户属性:checkstyle.header.file
  • 默认:许可证.txt

包括资源:

是否将 Checkstyle 应用于资源目录。
  • 类型:布尔值
  • 从: 2.11
  • 要求:是
  • 用户属性:checkstyle.includeResources
  • 默认值:真

包括测试资源:

是否将 Checkstyle 应用于测试资源目录。
  • 类型:布尔值
  • 从: 2.11
  • 要求:是
  • 用户属性:checkstyle.includeTestResources
  • 默认值:真

包括TestSourceDirectory:

包含或不包含用于 Checkstyle 的测试源目录。
  • 类型:布尔值
  • 从: 2.2
  • 要求:否
  • 默认值:假

包括:

指定要用于 Checkstyle 的源文件的名称过滤器。
  • 类型:java.lang.String
  • 要求:是
  • 用户属性:checkstyle.includes
  • 默认值:**\/*.java

logViolationsToConsole:

将检测到的违规输出到控制台。
  • 类型:布尔值
  • 从: 2.3
  • 要求:否
  • 用户属性:checkstyle.console
  • 默认值:真

最大允许违规:

允许的最大违规次数。仅当违规次数超过此限制时,执行才会失败。
  • 类型:整数
  • 从: 2.3
  • 要求:否
  • 用户属性:checkstyle.maxAllowedViolations
  • 默认值:0

输出文件:

指定保存 Checkstyle 输出的路径和文件名。输出文件的格式由 outputFileFormat参数确定。
  • 类型:java.io.File
  • 要求:否
  • 用户属性:checkstyle.output.file
  • 默认值:${project.build.directory}/checkstyle-result.xml

输出文件格式:

指定写入输出文件时要使用的输出格式。有效值为“ plain ”和“ xml ”。
  • 类型:java.lang.String
  • 要求:否
  • 用户属性:checkstyle.output.format
  • 默认值:xml

属性位置:

指定属性文件的位置。

这个参数被解析为 URL,文件然后资源。如果成功解析,属性位置的内容将被复制到 ${project.build.directory}/checkstyle-checker.properties 文件中,然后再传递给 Checkstyle 进行加载。

propertiesLocation的内容将提供给 Checkstyle 用于指定 xml 配置中的参数值(在configLocation 参数中指定)。

  • 类型:java.lang.String
  • 从: 2.5
  • 要求:否
  • 用户属性:checkstyle.properties.location

属性扩展:

允许指定原始属性扩展信息。
  • 类型:java.lang.String
  • 要求:否

资源排除:

指定检查资源时要为 Checkstyle 排除的文件的名称过滤器。
  • 类型:java.lang.String
  • 从: 2.11
  • 要求:否
  • 用户属性:checkstyle.resourceExcludes

资源包括:

指定检查资源时要用于 Checkstyle 的文件的名称过滤器。
  • 类型:java.lang.String
  • 从: 2.11
  • 要求:是
  • 用户属性:checkstyle.resourceIncludes
  • 默认值:**/*.properties

规则文件:

内联 Checkstyle 规则的转储文件
  • 类型:java.io.File
  • 要求:否
  • 用户属性:checkstyle.output.rules.file
  • 默认:${project.build.directory}/checkstyle-rules.xml

跳过:

跳过整个检查。
  • 类型:布尔值
  • 从: 2.2
  • 要求:否
  • 用户属性:checkstyle.skip
  • 默认值:假

跳过执行:

跳过 Checkstyle 执行只会扫描输出文件。
  • 类型:布尔值
  • 从: 2.5
  • 要求:否
  • 用户属性:checkstyle.skipExec
  • 默认值:假

源目录:

指定要用于 Checkstyle 的源目录的位置。
  • 类型:java.util.List
  • 从: 2.13
  • 要求:否
  • 默认值:${project.compileSourceRoots}

源目录:

已弃用。而是使用sourceDirectories
指定要用于 Checkstyle 的源目录的位置。
  • 类型:java.io.File
  • 要求:否

抑制文件表达式:

要在抑制文件的属性中使用的键。
  • 类型:java.lang.String
  • 从: 2.1
  • 要求:否
  • 用户属性:checkstyle.suppression.expression
  • 默认:checkstyle.suppressions.file

抑制位置:

指定要使用的抑制 XML 文件的位置。

此参数被解析为资源、URL 和文件。如果成功解决,则将抑制 XML 的内容复制到 ${project.build.directory}/checkstyle-suppressions.xml 文件中,然后再传递给 Checkstyle 进行加载。

有关将可用于您的 Checkstyle 配置的属性,请参阅suppresssFileExpression 。

  • 类型:java.lang.String
  • 自:2.0-beta-2
  • 要求:否
  • 用户属性:checkstyle.suppressions.location

测试源目录:

指定要用于 Checkstyle 的测试源目录的位置。
  • 类型:java.util.List
  • 从: 2.13
  • 要求:否
  • 默认值:${project.testCompileSourceRoots}

测试源目录:

已弃用。而是使用testSourceDirectories
指定要用于 Checkstyle 的测试源目录的位置。
  • 类型:java.io.File
  • 从: 2.2
  • 要求:否

使用文件:

如果为null,Checkstyle 插件将在标准输出上显示违规。否则,将创建一个包含违规的文本文件。
  • 类型:java.io.File
  • 要求:否

违规忽略:

违规可忽略。这是一个逗号分隔的列表,每个值是规则名称、规则类别或规则类的 java 包名称。
  • 类型:java.lang.String
  • 从: 2.13
  • 要求:否
  • 用户属性:checkstyle.violation.ignore

违规严重性:

被视为违规的最低严重性级别。有效值为“ error ”、“ warning ”和“ info ”。
  • 类型:java.lang.String
  • 从: 2.2
  • 要求:否
  • 用户属性:checkstyle.violationSeverity
  • 默认值:错误