idea配置CheckStyle插件

idea配置CheckStyle插件

1.File---->Setting 安装插件

在这里插入图片描述

2.配置Checkstyle

Eclipse菜单栏上选择 File-> Setting ->Tools -> Checkstyle,进入如下设置界面:

在这里插入图片描述在这里插入图片描述

3.开始

选择要检查的类,右键选择Check Current File

在这里插入图片描述

自定义checkStyle:

<?xml version="1.0"?>

<!DOCTYPE module PUBLIC
        "-//Checkstyle//DTD Checkstyle Configuration 1.3//EN"
        "https://checkstyle.org/dtds/configuration_1_3.dtd">
<!--
    This configuration file was written by the eclipse-cs plugin configuration editor
-->
<!--
    Checkstyle-Configuration: CTP
    Description: none
-->
<module name="Checker">
  <property name="severity" value="error"/>
  <property name="charset" value="UTF-8" />
  <!-- 检查样式抑制,value是指向的路径是相对于项目根目录的 -->
  <module name="SuppressionFilter">
    <property name="file" value="scripts/suppressions.xml"/>
  </module>


  <!-- 长度方面的检查 -->
  <module name="LineLength">
    <property name="max" value="150"/>
    <property name="tabWidth" value="4"/>
  </module>

  <!--支持忽略特定警告和使用注解@SuppressWarnings来忽略警告-->
  <module name="SuppressWarningsFilter">
    <!--<property name="ignoreUnused" value="true"/>-->
    <!--<property name="ignoreUndeclared" value="true"/>-->
    <!--<property name="ignoreNull" value="true"/>-->
  </module>

  <module name="TreeWalker">
    <!--SuppressionCommentFilter忽略以特定注释格式的警告信息,如下格式使用OFF、ON包裹,注意必须大写-->
    <!--// CHECKSTYLE:OFF-->
    <!--中间是本来不能通过checkstyle校验的代码-->
    <!--// CHECKSTYLE:ON-->
    <module name="SuppressionCommentFilter"/>
    <!--配合SuppressWarningsFilter使用,如果没有SuppressWarningsHolder配置则SuppressWarningsFilter不生效-->
    <module name="SuppressWarningsHolder" />
    <module name="JavadocMethod">
      <!--<property name="suppressLoadErrors" value="true"/>-->
      <!--<property name="allowUndeclaredRTE" value="true"/>-->
      <!--<property name="allowMissingPropertyJavadoc" value="true"/>-->
    </module>
    <module name="MissingJavadocMethod" />
    <module name="NonEmptyAtclauseDescription" />
    <module name="JavadocVariable"/>
    <module name="JavadocStyle">
      <property name="checkEmptyJavadoc" value="true" />
      <property name="checkFirstSentence" value="false" />
      <property name="checkHtml" value="false" />
      <message key="javadoc.missing" value="空白注释,请确保注释中至少留有一行为纯中文功能描述注释"/>
    </module>
    <module name="JavadocType">
      <property name="scope" value="public" />
      <property name="allowMissingParamTags" value="true" />
      <property name="allowUnknownTags" value="true" />
      <property name="authorFormat" value="[\u4e00-\u9fa5]" />
      <message key="javadoc.missing" value="类注释:缺少Javadoc注释.或者作者格式没按照 @author +中文姓名 来注释"/>
    </module>
    <module name="AnnotationUseStyle">
      <property name="elementStyle" value="ignore" />
      <property name="trailingArrayComma" value="ignore" />
      <property name="closingParens" value="ignore" />
    </module>
    <module name="AvoidStarImport">
      <property name="severity" value="error"/>
      <message key="import.avoidStar" value="请不要使用''.*''进行import - {0}."/>
    </module>
    <!--module name="MultipleStringLiterals"/-->
    <!--module name="MultipleVariableDeclarations"/-->  
    <module name="NestedTryDepth">
    	<property name="max" value="3"/>
    </module>
    <!-- clone方法必须调用了super.clone() -->
    <!--module name="SuperClone"/-->
    <!-- finalize 必须调用了super.finalize() -->
    <!--module name="SuperFinalize"/--> 
    <!-- switch要有default -->
    <module name="DefaultComesLast"/>
    <!--module name="ParameterNumber">
      <message key="maxParam" value="参数太多 ,共{1,number,integer}个,最好不要超过 {0,number,integer}个。"/>
    </module-->
    <!-- 类名(class 或interface) 的检查 -->
    <module name="TypeName" />
    <!-- 变量的检查 -->
    <module name="MemberName" />
    <!-- 方法名的检查 -->
    <module name="MethodName" />
    <!-- 常量名的检查 -->
    <module name="ConstantName" />
    <module name="MethodLength">
      <property name="tokens" value="METHOD_DEF" />
      <property name="max" value="150" />
    </module>
    <!-- 方法的参数个数不超过3个。 -->
    <module name="ParameterNumber">
      <property name="max" value="15" />
    </module>
    <module name="EmptyBlock"/>
    <module name="EmptyStatement"/>
    <module name="InnerAssignment"/>
     <!-- 所有区域都要使用大括号。 -->
    <module name="NeedBraces" />
    <module name="UpperEll">
      <metadata name="net.sf.eclipsecs.core.comment" value="使用大写L,l和1太像"/>
      <property name="severity" value="error"/>
    </module>
    <module name="NestedIfDepth">
      <property name="max" value="3" />
    </module>
    <module name="NestedTryDepth">
      <property name="max" value="3" />
    </module>
    <module name="NestedForDepth">
      <property name="max" value="3" />
    </module>
    <!-- 同一行不能有多个声明 -->
    <module name="MultipleVariableDeclarations" />
    <!--module name="ParameterNumber">
      <property name="severity" value="error"/>
    </module-->
    <!--module name="CyclomaticComplexity"/-->
    <module name="StringLiteralEquality">
      <metadata name="net.sf.eclipsecs.core.comment" value="String比较请使用equals"/>
      <property name="severity" value="error"/>
      <message key="string.literal.equality" value="String比较请使用equals(), 而不是 ''{0}''."/>
    </module>
    <module name="ParameterAssignment">
      <metadata name="net.sf.eclipsecs.core.comment" value="方法参数不允许赋值"/>
      <property name="severity" value="error"/>
      <message key="parameter.assignment" value="请不要对方法的参数赋值:''{0}''"/>
    </module>
    <!--module name="ModifiedControlVariable">
      <metadata name="net.sf.eclipsecs.core.comment" value="不允许修改循环控制变量"/>
      <property name="severity" value="error"/>
    </module-->
    <!--module name="ReturnCount">
      <metadata name="net.sf.eclipsecs.core.comment" value="方法最多允许3个return"/>
      <property name="severity" value="error"/>
      <property name="max" value="4"/>
    </module-->
  </module> 
  <module name="RegexpSingleline">
    <metadata name="net.sf.eclipsecs.core.comment" value="不允许使用System.out.print"/>
    <property name="severity" value="error"/>
    <property name="format" value="System\.out\.print"/>
    <property name="message" value="不允许使用System.out.print,请使用log输出"/>
  </module>
</module>

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值