idea,配置checkstyle 【提高代码质量,检查代码规范的工具 】Checkstyle

原文地址:http://blog.csdn.net/shenhonglei1234/article/details/53669436

CheckStyle是SourceForge下的一个项目,提供了一个帮助JAVA开发人员遵守某些编码规范的工具。它能够自动化代码规范检查过程,从而使得开发人员从这项重要,但是枯燥的任务中解脱出来。

CheckStyle检验的主要内容

  • 列表内容
  • Javadoc注释
  • 命名约定
  • 标题
  • Import语句
  • 体积大小
  • 空白
  • 修饰符
  • 代码问题
  • 类设计
  • 混合检查(包括一些有用的比如非必须的System.out和printstackTrace)

  • 下面主要介绍IDEA,如何配置,使用checkstyle

1、CheckStyle插件安装和使用

一,打开settings的plugins,点击查找CheckStyle-IDEA安装,如果查找不到,Browse repositories…
idea,配置checkstyle 【提高代码质量,检查代码规范的工具 】Checkstyle_第1张图片

idea,配置checkstyle 【提高代码质量,检查代码规范的工具 】Checkstyle_第2张图片

二,使用IDEA的插件生效,

三、添加自己的配置文件,要检查的项目

idea,配置checkstyle 【提高代码质量,检查代码规范的工具 】Checkstyle_第3张图片

四、将checkstyle.xml配置文件粘贴如下 :、




<module name="Checker">
    
    
    
    
    <module name="NewlineAtEndOfFile"/>

    
    <module name="Translation"/>
    
    <module name="FileLength">
        <property name="max" value="1500"/>
    module>

    
    <module name="FileTabCharacter"/>

    
    <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>

    
    <module name="TreeWalker">
        
        
        <module name="JavadocMethod">
            <property name="tokens" value="METHOD_DEF" />
        module>
        
        <module name="JavadocType"/>
        
        <module name="JavadocVariable"/>
        
        <module name="JavadocStyle">
            <property name="checkFirstSentence" value="false"/>
        module>
        
        <module name="TodoComment"/>

        
        
        <module name="LocalFinalVariableName" />
        
        <module name="LocalVariableName" />
        
        <module name="PackageName">
            <property name="format" value="^[a-z]+(\.[a-z][a-z0-9]*)*$" />
            <message key="name.invalidPattern" value="包名 ''{0}'' 要符合 ''{1}''格式."/>
        module>
        
        <module name="StaticVariableName" />
        
        <module name="TypeName">
            <property name="severity" value="warning"/>
            <message key="name.invalidPattern" value="名称 ''{0}'' 要符合 ''{1}''格式."/>
        module>
        
        <module name="MemberName" />
        
        <module name="MethodName" />
        
        <module name="ParameterName " />
        
        <module name="ConstantName" />

        
        
        <module name="ArrayTypeStyle"/>
        
        
        
        <module name="UpperEll"/>


        
        
        
        
        
        
        
        
        
        
        
        
        

        
        


        
        
        <module name="AvoidStarImport"/>
        
        <module name="IllegalImport"/>
        
        <module name="RedundantImport"/>
        
        <module name="UnusedImports" />

        
        
        <module name="LineLength">
            <property name="max" value="150" />
        module>
        
        <module name="MethodLength">
            <property name="tokens" value="METHOD_DEF" />
            <property name="max" value="150" />
        module>
        
        <module name="ParameterNumber">
            <property name="max" value="10" />
            <property name="ignoreOverriddenMethods" value="true"/>
            <property name="tokens" value="METHOD_DEF" />
        module>

        
        
        <module name="MethodParamPad" />
        
        <module name="TypecastParenPad" />
        
        
        
        
        
        <module name="NoWhitespaceAfter"/>
        
        <module name="NoWhitespaceBefore"/>
        
        <module name="OperatorWrap"/>
        
        <module name="ParenPad"/>
        
        <module name="WhitespaceAfter"/>
        
        <module name="WhitespaceAround"/>


        
        
        <module name="ModifierOrder"/>
        
        <module name="RedundantModifier"/>


        
        
        <module name="AvoidNestedBlocks"/>
        
        <module name="EmptyBlock"/>
        
        <module name="LeftCurly"/>
        
        <module name="NeedBraces"/>
        
        <module name="RightCurly"/>


        
        
        
        
        <module name="EmptyStatement"/>
        
        <module name="EqualsHashCode"/>
        
        <module name="HiddenField">
            <property name="tokens" value="VARIABLE_DEF"/>
        module>
        
        <module name="IllegalInstantiation"/>
        
        <module name="InnerAssignment"/>
        
        <module name="MagicNumber">
            <property name="ignoreNumbers" value="0, 1"/>
            <property name="ignoreAnnotation" value="true"/>
        module>
        
        <module name="MissingSwitchDefault"/>
        
        <module name="SimplifyBooleanExpression"/>
        
        <module name="SimplifyBooleanReturn"/>

        
        
        
        
        <module name="FinalClass"/>
        
        <module name="HideUtilityClassConstructor"/>
        
        <module name="InterfaceIsType"/>
        
        <module name="VisibilityModifier"/>


        
        

        
        
    module>
module>

五、运行并看执行效果
点击要check的文件,就会根据您配置的规范,提示出一系统的问题。
idea,配置checkstyle 【提高代码质量,检查代码规范的工具 】Checkstyle_第4张图片

你可能感兴趣的:(IDEA)