关闭IDEA格式化注释
IDEA在格式化模板的时候会把注释一起格式化,导致排好序的方法或者类注释顺序错乱。
设置方法:打开IDEAFile-> Setting -> Editor -> Code Style -> Java -> JavaDoc
,找到Enable JavaDoc Formatting
,将勾选取消掉即可。
类注释
-
在
File-> Setting -> Editor -> File and Code Templates -> Includes
新建ThunisoftJavaFile
, 内容如下:/** * @projectName ${PROJECT_NAME} * @package ${PACKAGE_NAME} * @className ${PACKAGE_NAME}.${NAME} * @copyright Copyright 2020 Thunisoft, Inc All rights reserved. */
-
在
File-> Setting -> Editor -> File and Code Templates -> Includes
新建ThunisoftJavaClass
, 内容如下:/** * ${NAME} * @description ${description} * @author wzy * @date ${DATE} ${TIME} * @version 1.0 */
这里的
${description}
是个占位符,在新建Java文件时需要先写完描述才能创建成功。 -
在
File-> Setting -> Editor -> File and Code Templates -> Files
编辑以下项:Class
#parse("ThunisoftJavaFile.java") #if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end #parse("ThunisoftJavaClass.java") public class ${NAME} { }
Interface
#parse("ThunisoftJavaFile.java") #if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end #parse("ThunisoftJavaClass.java") public interface ${NAME} { }
Enum
#parse("ThunisoftJavaFile.java") #if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end #parse("ThunisoftJavaClass.java") public enum ${NAME} { }
AnnotationType
#parse("ThunisoftJavaFile.java") #if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end #parse("ThunisoftJavaClass.java") public @interface ${NAME} { }
- 效果图:
方法注释
- 新建
Live Template
:File-> Setting -> Editor -> Live Template
,选择或者新建一个组,点击加号新建Live Template
:
说明:
Abbreviation
是触发模板提示的符号。Applicable In
这里是设置在什么内容中能触发本模板的提示,我设置的是在Java的注释中可以触发。Expand with
是触发提示后,选中提示然后加Enter
键就可以生成模板,我设置的是Enter
,也可以设置Tab
和Space
。
-
在新建的
Live Template
的Template text
内编写模板,注意空格:
*
*
* $name$
*
* @description $END$$params$$return$
* @date $date$ $time$
* @author wzy
* @version 1.0
*/
- 点击
EDIT VARIABLES
,编辑参数:比较特殊的两个,这两个是个groovy脚本:
params参数:groovyScript("def result=''; def params=\"${_1}\".replaceAll('\\\\[|\\\\]|\\\\s','').split(',').toList(); for(i = 0; i < params.size(); i++) {if(params[i].size()==0)continue;result+='\\n * @param ' + params[i] +' '}; return result", methodParameters())
return参数:groovyScript("def p=\"${_1}\";if(p=='null'||p=='void'){null}else{'\\n * @return '+\"${_1}\"}", methodReturnType())
- 效果:
-
有个缺陷,这个方法不能生成
@throws
,我找了好久都没找到怎么获取到抛出的异常,只能自己写了。