checkstyle.checkstyle.xml Maven / Gradle / Ivy
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE module PUBLIC "-//Checkstyle//DTD Checkstyle Configuration 1.3//EN" "https://checkstyle.org/dtds/configuration_1_3.dtd"> <!-- @see https://github.com/checkstyle/checkstyle @see https://checkstyle.sourceforge.io/config.html https://www.cnblogs.com/ziyuyuyu/p/9870717.html https://www.cnblogs.com/ziyuyuyu/p/9914272.html --> <module name="Checker"> <!-- If you set the basedir property below, then all reported file names will be relative to the specified directory. See https://checkstyle.org/config.html#Checker <property name="basedir" value="${basedir}"/> --> <property name="severity" value="error"/> <property name="fileExtensions" value="java, properties, xml"/> <!-- Excludes all 'module-info.java' files --> <!-- See https://checkstyle.org/config_filefilters.html --> <module name="BeforeExecutionExclusionFileFilter"> <property name="fileNamePattern" value="module\-info\.java$"/> </module> <!-- https://checkstyle.org/config_filters.html#SuppressionFilter --> <!--<module name="SuppressionFilter"> <property name="file" value="${org.checkstyle.sun.suppressionfilter.config}" default="checkstyle-suppressions.xml" /> <property name="optional" value="true"/> </module>--> <!-- Checks that a package-info.java file exists for each package. --> <!-- See https://checkstyle.org/config_javadoc.html#JavadocPackage --> <module name="JavadocPackage"/> <!-- Checks whether files end with a new line. --> <!-- See https://checkstyle.org/config_misc.html#NewlineAtEndOfFile --> <module name="NewlineAtEndOfFile"/> <!-- Checks that property files contain the same keys. --> <!-- See https://checkstyle.org/config_misc.html#Translation --> <module name="Translation"/> <!-- Checks for Size Violations. --> <!-- See https://checkstyle.org/config_sizes.html --> <module name="FileLength"/> <module name="LineLength"> <property name="fileExtensions" value="java"/> </module> <!-- Checks for whitespace --> <!-- See https://checkstyle.org/config_whitespace.html --> <!--<module name="FileTabCharacter"/>--> <!-- Miscellaneous other checks. --> <!-- See https://checkstyle.org/config_misc.html --> <module name="RegexpSingleline"> <property name="format" value="\s+$"/> <property name="minimum" value="0"/> <property name="maximum" value="0"/> <property name="message" value="Line has trailing spaces."/> </module> <!-- Checks for Headers --> <!-- See https://checkstyle.org/config_header.html --> <!-- <module name="Header"> --> <!-- <property name="headerFile" value="${checkstyle.header.file}"/> --> <!-- <property name="fileExtensions" value="java"/> --> <!-- </module> --> <module name="TreeWalker"> <!-- 此处规定使用tab缩进 --> <module name="RegexpSinglelineJava"> <property name="format" value="^[ ]+"/> <property name="message" value="Indent must use tab characters"/> <property name="ignoreComments" value="true"/> </module> <!-- Checks for Javadoc comments. --> <!-- See https://checkstyle.org/config_javadoc.html --> <module name="InvalidJavadocPosition"/> <module name="JavadocMethod"/> <module name="JavadocType"/> <module name="JavadocVariable"/> <module name="JavadocStyle"/> <module name="MissingJavadocMethod"/> <!-- Checks for Naming Conventions. --> <!-- See https://checkstyle.org/config_naming.html --> <module name="ConstantName"/> <module name="LocalFinalVariableName"/> <module name="LocalVariableName"/> <module name="MemberName"/> <module name="MethodName"/> <module name="PackageName"/> <module name="ParameterName"/> <module name="StaticVariableName"/> <module name="TypeName"/> <!-- Checks for imports --> <!-- See https://checkstyle.org/config_imports.html --> <module name="AvoidStarImport"/> <module name="IllegalImport"/> <!-- defaults to sun.* packages --> <module name="RedundantImport"/> <module name="UnusedImports"> <property name="processJavadoc" value="false"/> </module> <!-- Checks for Size Violations. --> <!-- See https://checkstyle.org/config_sizes.html --> <module name="MethodLength"/> <module name="ParameterNumber"/> <!-- Checks for whitespace --> <!-- See https://checkstyle.org/config_whitespace.html --> <module name="EmptyForIteratorPad"/> <module name="GenericWhitespace"/> <module name="MethodParamPad"/> <module name="NoWhitespaceAfter"/> <module name="NoWhitespaceBefore"/> <module name="OperatorWrap"/> <module name="ParenPad"/> <module name="TypecastParenPad"/> <module name="WhitespaceAfter"/> <module name="WhitespaceAround"/> <!-- Modifier Checks --> <!-- See https://checkstyle.org/config_modifiers.html --> <module name="ModifierOrder"/> <module name="RedundantModifier"/> <!-- Checks for blocks. You know, those {}'s --> <!-- See https://checkstyle.org/config_blocks.html --> <module name="AvoidNestedBlocks"/> <module name="EmptyBlock"/> <module name="LeftCurly"/> <module name="NeedBraces"/> <module name="RightCurly"/> <!-- Checks for common coding problems --> <!-- See https://checkstyle.org/config_coding.html --> <module name="EmptyStatement"/> <module name="EqualsHashCode"/> <module name="HiddenField"/> <module name="IllegalInstantiation"/> <module name="InnerAssignment"/> <module name="MagicNumber"/> <module name="MissingSwitchDefault"/> <module name="MultipleVariableDeclarations"/> <module name="SimplifyBooleanExpression"/> <module name="SimplifyBooleanReturn"/> <!-- Checks for class design --> <!-- See https://checkstyle.org/config_design.html --> <module name="DesignForExtension"/> <module name="FinalClass"/> <module name="HideUtilityClassConstructor"/> <module name="InterfaceIsType"/> <module name="VisibilityModifier"/> <!-- Miscellaneous other checks. --> <!-- See https://checkstyle.org/config_misc.html --> <module name="ArrayTypeStyle"/> <module name="FinalParameters"/> <module name="TodoComment"/> <module name="UpperEll"/> <!-- https://checkstyle.org/config_filters.html#SuppressionXpathFilter --> <!--<module name="SuppressionXpathFilter"> <property name="file" value="${org.checkstyle.sun.suppressionxpathfilter.config}" default="checkstyle-xpath-suppressions.xml" /> <property name="optional" value="true"/> </module>--> </module> </module>