Intellij IDE 修改默认类和方法注释格式

修改创建类时的默认注释

第一步:按菜单路径[File->Settings->Editor->File and Code Templates]找到默认配置

image

第二步:修改JAVA类、接口、枚举的注释,因为三者注释相似,所以直接关联到同一套注释配置【File Header.java】,所以直接修改includes页面下File Header.java中的配置即可

image
image

第三步:测试,直接创建类文件,若定义的时系统自由变量,则直接填充,若不是系统内部变量,则在创建类文件时会弹出提示框,让用户填写。

image
image

代码如下

类注释配置
/**
 * TODO ${Description}
 *
 * @author chenshuangjian
 * @date ${YEAR}-${MONTH}-${DAY} ${HOUR}:${MINUTE}:${SECOND}
 * @since 0.0.1
 */

修改方法默认注释

第一步:按照路径【File->Settings->Live Templates】找到配置界面

image

第二步:添加自定义配置组

image

第三步:在自定义配置组中添加方法注释,且名字只能是*,否则无法覆盖IDE默认的方法注释

image

第四步:编辑方法注释配置

image

第一点:Abbreviation必须为*,否则无法覆盖默认的方法配置

第二点:编辑注释模板,第一行只有一个*,否则显示的注释会出现多余内容

第三点:关联参数:

1、默认的获取参数名表达式显示的参数名在一行,需要自定义编写表达式显示多行参数名

image

完整方法注释模板,可直接复制到IDEA
<template name="*" value="*&#10; * TODO&#10; $param$&#10; * @return $return$    &#10; * @author $user$&#10; * @date $date$&#10; */" shortcut="ENTER" description="方法注释" toReformat="true" toShortenFQNames="true">
  <variable name="param" expression="groovyScript(&quot;if(\&quot;${_1}\&quot;.length() == 2) {return '';} else {def result='\\n'; def params=\&quot;${_1}\&quot;.replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList(); for(i = 0; i &lt; params.size(); i++) {result+=' * @param ' + params[i] + ((i &lt; params.size() - 1) ? '\\n' : '')}; return result}&quot;, methodParameters())  " defaultValue="" alwaysStopAt="true" />
  <variable name="return" expression="methodReturnType()" defaultValue="" alwaysStopAt="true" />
  <variable name="user" expression="user()" defaultValue="" alwaysStopAt="true" />
  <variable name="date" expression="date(&quot;yyyy-MM-dd HH:mm:ss&quot;)" defaultValue="" alwaysStopAt="true" />
  <context>
    <option name="JAVA_CODE" value="true" />
  </context>
</template>
注释模板
*
 * TODO
 $param$
 * @return $return$    
 * @author $user$
 * @date $date$
 */

自定义参数多行表达式
groovyScript("if(\"${_1}\".length() == 2) {return '';} else {def result='\\n'; def params=\"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList(); for(i = 0; i < params.size(); i++) {result+=' * @param ' + params[i] + ((i < params.size() - 1) ? '\\n' : '')}; return result}", methodParameters()) 
#### 2、时间表达式的显示格式和JAVA中的时间类型一样,可以使用格式化字符串显示

image

第四点:修改Options为Enter键触发注释

image

第五点:修改配置作用域

image

第五步:测试,在方法上方输入/** 按Enter键触发注释,效果如下

image

修改类默认注释,步骤同方法注释

image

类注释
**
 * TODO
 *  
 * @author $user$
 * @date $date$
 * @since 0.0.1
 */
posted @ 2023-12-20 10:30  百年一梦  阅读(1304)  评论(0编辑  收藏  举报