最近没啥事开始正式用Eclipse 转入 idea工具阵营,毕竟有70%的开发者在使用idea开发,所以它的魅力可想而知。刚上手大概有一天,就知道它为啥取名为 intelli(智能化)了,确实很智能,这还是一些小小的细节,当然idea也有它不足之处,就是我们今天要讲的“自定义方法注解模板”,类注解模板可以很简单的设置,这里我就不重复,而网上很多关于自定义方法注解模板的文章大多是抄袭获取转发根本自己就没有验证,本文经过自己亲自验证有效。
- File->settings->Editor->Live Templates
- 点击右上角的绿色+号,然后选择template group ,然后输入group的name,随便输入就好了:myGroup。然后点ok
- 选中刚才创建的myGroup,然后再次点击右侧的绿色+,这次选择的是第一个1. Live Template。取名为*,取名可以随便,只是个人觉得方便,你可以取别的。
- 配置模板,下面是我的模板,大家仔细看我的模板开头是*而不是/*,这就是关键所在。
- *
- *
- *
- * @author chenmc
- * @date $date$ $time$
- * @param $params$
- * @return $returns$
- */
<---------------------------------------> * * [话不多说一句就好] * * @param $params$ * @author 傻小白 * @date $date$ $time$ * @return $returns$ */ <---------------------------------------> date()
time()
methodParameters()
methidReturnType()
<--------------------------------------->
在此处设置生成注释模板的快捷键:我设置的是回车键(enter)
在此处设置哪些类型的文件可以生成注释模板:我设置的是所有文件
注意:只有当变量被$$包围时右侧的Edit variables才可以点击哦。再编辑好模板之后就只为参数添加变量,点击右侧的 Editor variables,
- 完成之后点击Apply然后点击OK,注意了,重点的地方,在你的方法上输入 /然后加上模板的名称,这就是我为什么不取字母而取名为*,因为这样很快速,再按Tab键(注意啊不是按Enter键,而是按Tab键)就会出现你想要的注释了,很多教程是直接输入模板名称按tab键,但是这种方法的@param和@return是获取不到的,再重复一遍正确的方式:/** 然后按Tab键;如果你取名为abc那就是 /*abc 然后按Tab。效果如下:
- 但是还有一个问题,细心的读者会发现在@param这个参数上报错了,这是因为idea强大的检查功能,有两种解决办法:
- File->settings->Editor->Inspections->javadoc issues下面第四项将红色 Error改为黄色Warning即可
File->settings->Editor->Inspections->javadoc issues下面第四项将红色 Error改为黄色Warning即可
- 第二种是点击idea的右下角的人头图像,然后选择高亮级别,调为Syntax模式即可
第二种是点击idea的右下角的人头图像,然后选择高亮级别,调为Syntax模式即可
至此已大功告成了,希望能帮到大家! -
转载请注明原创出处
原创出自:
http://blog.csdn.net/u014044812/article/details/76577479新内容:
拆开@param
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
*
[话不多说一句就好]
*
$params$
* @return $returns$
* @author 傻小白
* @date $date$ $time$
*/
<--------------------------------------->
date()
methidReturnType()
time()
params设置 Expression为空 ,Default Value为 下面内容groovyScript(“def result=’’; 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())
methidReturnType()
<--------------------------------------->
完成
/** 回车 ->完成
**
新版
**:
* * [话不多说一句就好] * $params$ * @author 傻小白 * @return $returns$ * @date $date$ $time$ * @throws $throw$ */
date : date() time : time() param : groovyScript("def result=''; def params=\"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList(); for(i = 0; i < params.size(); i++) {if(params[i]!='null'){result+=' * @param ' + params[i] + ((i < params.size() - 1) ? '\\n' : '')}else{result+=' * '}}; return result", methodParameters()) return : methodReturnType() throws : expressionType(Expression)
param是 Default value
其它都是 expression新建文件注释模板(class为例)
#if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end /** * [话不多说,一句就好] * @author YiQing * @date ${DATE} ${TIME} * @remark */ public class ${NAME} { }
如图: