IDEA统一CodeStyle

IDEA 配置统一的方法注释和类注释

最近觉得建立统一的代码风格检查很有必要,主要有以下原因

  • 没有良好的注释和返回说明,有些不能见名知意;往往代码经过多人修改,就会无法溯源,扯皮的事儿就会多

  • 风格差异太大,只要每个人的IDE不同,提交后自动格式化后就会有版本冲突

类注释

image-20200615183353699.png

在File->Settings->Editor->File and Code Templates下分别修改Class,Interface,Enum等注释模板

/**
 * FileName: ${NAME}
 * Author:   ${USER}
 * Date:     ${DATE} ${TIME}
 * Description: ${DESCRIPTION}
 */
#if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")
 package ${PACKAGE_NAME};
#end
​
/**
 * 〈${DESCRIPTION}〉
 * @author ${USER}
 * @create ${DATE}
 * @since 1.0.0
 */
public class ${NAME} {
​
}

方法注释模板

  • 新建方法注释模板


    image.png
  • 设置注释模板
 * @Author $user$
 * @Description
 * @date $date$ $time$ $params$ $return$
 **/
  • 编辑注释模板的环境变量(groovy脚本)
image.png
  • @param自动获取脚本
groovyScript("if(\"${_1}\".length() == 2){
 return '';
 }else{
 def result=''; 
 def params=\"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList();
 for(i = 0; i < params.size(); i++) {
 if(params[i]=='null'){
 return;
 }else{
 result+='\\n' + ' * @param ' + params[i] 
 }
 }; 
 return result;
 }", methodParameters());
  • @return注释模板脚本
    • 不带泛型参数(本次使用这个)
groovyScript("def result=''; def params=\"${_1}\"; 
         if(params.indexOf('<')!=-1){
         result=params.substring(0, params.indexOf('<')); 
         return '\\n * @return ' +'{@link '+result+'}';
         }
         else{
         if(params=='null'||params=='void'){
         return;
         }
         else{
         return '\\n * @return ' +'{@link ' + params+'}';
         }
         }", methodReturnType());
  • 返回参数带泛型(不建议使用)
         if(returnType=='null'||returnType=='void'){
         return;
         }else{
         result += '\\n * @return ' + \"{@link \"+returnType+\"}\"; return result;
         }", methodReturnType());

IDEA配置GoogleCodeStyle

导入官方配置文件

  • 下载intellij-java-google-style.xml

  • IDEA配置XML

    在这里导入下载xml文件

image-20200616144738276.png

IDEA修改

intellij-java-google-style.xml导入后,根据个人习惯修改部分设置,以下是示例

备注:你也可以直接修改intellij-java-google-style.xml文件后导入IDEA就可以了

  • 修改每行字符限制
image-20200616145130828.png
  • 缩进调整
image-20200616145248178.png
  • 对齐
image-20200616145504306.png

IDEA 配置GoogleCodeStyleCheck

intellij-java-google-style.xml可以控制你的代码格式,但是对于方法是否有doc文档注释,类名是否合法,导入无效的包等,需要能够对这些不符合规定风格的代码进行检查,CheckStyle插件就是专门做这个的。

安装CheckStyle-IEEA插件

image-20200615180636252.png

配置CheckStyle.xml

  • CheckStyle.xml文件修改

CheckStyle官方参考

以下是基于官方配置修改后内容


 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

  • 加入CheckStyle.xml

    image-20200615181710608.png
image-20200615182417378.png
image-20200615182529011.png

扫描一下试试,看看当前代码有哪些问题

image-20200615182739875.png

后续:其实我们只做到了本地代码的检查,没有强制的约束。其实应该配合sonarqube+jenkins自动检查,sonarqube是可以导入checkstyle.xml来进行代码检查的,所以只需要我们把本次的checkstyle.xml导入即可。只有通过自动检查的才可以提交编译(这个是个好的思路,希望大家可以一起探讨)。

你可能感兴趣的:(IDEA统一CodeStyle)