Maven项目常用基本配置
<?xml version="1.0"?>
<!DOCTYPE module PUBLIC "-//Checkstyle//DTD Checkstyle Configuration 1.3//EN" "/dtds/configuration_1_3.dtd">
<!-- 以下所有 module 指定的name,没有添加property的配置,都是选择官方网站上默认的配置参数。-->
<module name="Checker">
<!-- 字符集编码 -->
<property name="charset" value="UTF-8"/>
<!-- 违规级别 -->
<property name="severity" value="error"/>
<!-- 需要检查的文件扩展名 -->
<property name="fileExtensions" value="java, properties, xml"/>
<!-- 文件是否包含制表符 -->
<module name="FileTabCharacter">
<property name="eachLine" value="true"/>
</module>
<!-- 行长度 -->
<module name="LineLength">
<property name="fileExtensions" value="java"/>
<property name="max" value="200"/>
<property name="ignorePattern" value="^implements.*|^extends.*|^package.*|^import.*|a href|href|http://|https://|ftp://"/>
</module>
<!-- property 文件中是否有相同的 key -->
<module name="Translation"/>
<!-- Java 源文件并定义一些适用于检查此类文件的一些属性 -->
<module name="TreeWalker">
<!--对方法的注释,这里表示必须注释每一个方法,可以不对方法里面的参数进行注释 -->
<module name="JavadocMethod">
<!-- 可以检查的方法的范围,例如:public只能检查public修饰的方法,private可以检查所有的方法 -->
<property name="scope" value="puplic"/>
<property name="allowUndeclaredRTE" value="true"/>
<!-- 是否忽略对参数注释的检查 -->
<property name="allowMissingParamTags" value="true"/>
<property name="allowMissingJavadoc" value="false"/>
<!-- 是否忽略对throws注释的检查 -->
<property name="allowMissingThrowsTags" value="false"/>
<!-- 是否忽略对return注释的检查 -->
<property name="allowMissingReturnTag" value="false"/>
<!-- 是否允许get/set 方法没有注释-->
<property name="allowMissingPropertyJavadoc" value="true"/>
</module>
<!-- 外部类型名称和文件名是否匹配 -->
<module name="OuterTypeFilename"/>
<!--包名的命名规范 -->
<module name="PackageName" />
<!-- 类名的命名规范-->
<module name="TypeName"/>
<module name="MemberName"/>
<module name="ParameterName"/>
<module name="LambdaParameterName"/>
<module name="CatchParameterName"/>
<module name="LocalVariableName"/>
<module name="ClassTypeParameterName"/>
<module name="MethodTypeParameterName"/>
<module name="InterfaceTypeParameterName"/>
<!-- 方法名的命名规范-->
<module name="MethodName"/>
<!-- 对常量的命名规范-->
<module name="ConstantName"/>
<!-- 静态变量的命名规范-->
<module name="StaticVariableName"/>
<!-- 必须导入类的完整路径,即不能使用*导入所需的类 -->
<module name="AvoidStarImport"/>
<!-- 检查是否导入的包没有使用 -->
<module name="UnusedImports"/>
<!-- 检查是否导入了多余的包 -->
<module name="RedundantImport"/>
<!-- 修饰符检查 -->
<!-- 检查修饰符的顺序是否遵照 java 语言规范,默认 public、protected、private、abstract、static、final、transient、volatile、synchronized、native、strictfp -->
<module name="ModifierOrder"/>
<!-- 检查接口和 annotation 中是否有多余修饰符,如接口方法不必使用 public -->
<module name="RedundantModifier"/>
<!-- 是否有嵌套代码块 -->
<module name="AvoidNestedBlocks"/>
<!-- 是否有空代码块 -->
<module name="EmptyBlock"/>
<!-- 代码块是否缺失 {} -->
<module name="NeedBraces"/>
<!-- 左大括号位置 -->
<module name="LeftCurly"/>
<!-- 右大括号位置 -->
<module name="RightCurly"/>
<!-- 检查数组类型定义的样式 -->
<module name="ArrayTypeStyle" />
<!-- 检查 switch 语句是否具有“default”子句 -->
<module name="MissingSwitchDefault" />
<!--检查switch中case后是否加入了跳出语句,例如:return、break、throw、continue -->
<module name="FallThrough" />
<!-- 检查 long 型定义是否有大写的“L” -->
<module name="UpperEll" />
<module name="EmptyForInitializerPad"/>
<module name="EmptyForIteratorPad"/>
<module name="EmptyLineSeparator">
<property name="allowNoEmptyLineBetweenFields" value="true" />
</module>
<module name="GenericWhitespace"/>
<module name="MethodParamPad"/>
<module name="NoLineWrap"/>
<module name="OperatorWrap"/>
<module name="ParenPad"/>
<module name="SingleSpaceSeparator"/>
<module name="TypecastParenPad"/>
<module name="WhitespaceAfter"/>
<module name="WhitespaceAround"/>
</module>
</module>