All Downloads are FREE. Search and download functionalities are using the official Maven repository.

checkstyle.checkstyle.xml Maven / Gradle / Ivy

There is a newer version: 3.2.0
Show newest version
<?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>




© 2015 - 2024 Weber Informatics LLC | Privacy Policy