大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE稳定放心使用
文章有点长了,为了方便大家快速使用,直接把配好的方法放到最上面,有兴趣的可以继续向下看完。
添加注释模板方法:CTRL+ALT+S(或者File -> Setting) 打开设置,搜索Live Templates 如下图一所示:
图一
然后点击图二中所示“+”号,添加模板组,如图二所示:
图二
我自己创建的是mygroup,然后点击添加live Template 添加类注释和方法注释。如图三所示:
图三
类注释:
图中的1号位置是注释快捷键,例如我配的是“cc”,打注释时就是用“/**cc -> Enter”,方法注释同理就是”/**mc -> Enter”。
重点:右侧的”Reformat according to style” 会自动格式化注释,如果有缩进问题请勾选,对方法注释一样。
*
* @author ***
* @createDate $date$ $time$
*/
类注释我写的比较简单,可以参考IDEA 创建类注释模板和方法注释模板 – 简书
$date$和$time$都是变量 点击Edit variables,参考下图配置
方法注释:
* $param$
* @author ***
* @createDate $date$ $time$ $return$
*/
增加了智能返回值。
方法注释和类注释的差别在于param字段是自己写的groovy脚本,如图所示,复制字符串到对应位置即可。
return对应的groovy脚本:
groovyScript("def params=\"${_1}\"; if(params=='void'){return '';} else {return '\\n\t * @return ' + params}", methodReturnType())
不需要return的这个的话可以选择自带函数就可以。
param对应的groovy脚本:
groovyScript("def result='\\n'; def params=\"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList(); for(i = 0; i < params.size(); i++) {if(i == 0 && params[i] == ''){return '';};result+=' * @param ' + params[i] + ((i < params.size() - 1) ? '\\n' : ' ')}; return result", methodParameters())
下面分割的都是臭屁,没什么用了。博主留着自己玩,有问题欢迎大家在评论区交流,本人不怎么上CSDN。
如题,使用idea的时候,因为它预定义的注释样式不尽人意,但还好的是支持自定义模板。
自定义模板
File->Settings
图一
然后搜索Live Templates ,之后添加一个自己的模板组,我的是myGroup,然后是添加自己的快速注释快捷键等等,关于如何添加这个的过程大家可以在网上搜到很多,我就不多说了。
2020-08-17 18:03 IDEA版本 2019.2.4
1. 最近利用javadoc 工具生成注释,发现原来注解中的 “:” 不能有。
2. 原本方法注释中返回值为空也有return,根据javadoc,无返回值不应该写return。
方法注释:
* $param$
* @author ***
* @createDate $date$ $time$ $return$
*/
return对应的groovy脚本:
groovyScript("def params=\"${_1}\"; if(params=='void'){return '';} else {return '\\n\t * @return ' + params}", methodReturnType())
param对应的groovy脚本:
groovyScript("def result='\\n'; def params=\"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList(); for(i = 0; i < params.size(); i++) {if(i == 0 && params[i] == ''){return '';};result+=' * @param ' + params[i] + ((i < params.size() - 1) ? '\\n' : ' ')}; return result", methodParameters())
2020-05-15 14:30 最新更新
fix: 修复了空参方法注释的bug,一直没有修改,贴出最新的。
*** 还是,右面要勾选 reformat according to style 选项 ***
快速粘贴方法注释:
* $param$
* @author: Kangxiaoan
* @createDate: $date$ $time$
* @return: $return$
*/
注意:第一行是有一个空行的,至于为什么,大家可以把空行去掉试一试。
param 对应的default value 如下
groovyScript("def result='\\n'; def params=\"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList(); for(i = 0; i < params.size(); i++) {if(i == 0 && params[i] == ''){return '';};result+=' * @param ' + params[i] + ((i < params.size() - 1) ? '\\n' : '')}; return result", methodParameters())
整体分割线,下面的内容是博主历史变更记录,博主比较怀旧。。错了也不想改。。。
2019年5月17日补充
看到说添加注释后,换行的时候会出现缩进问题,今天我重新安装idea后也出现了相同的问题。这里发下解决方法:
大家看看右侧第一个打勾的选项<Reformat according to style>,有相同问题的可以试试。
2019年12月25日补充
为了方便复制,把代码贴出来,注意,第一行都是有空行的,其他的大家可以根据自己的需求改的。
$param$
* @author:
* @Date: $date$
* @return: $return$
*/
顺便吧网上找的类注释贴一下,我才用的是/**cc然后tab,可能每个人都不一样,可以参考一下IDEA 创建类注释模板和方法注释模板 – 简书
* @Description
* @author: Kangxiaoan
* @version
* @date: $date$
*/
敲黑板,重点来了,对于新手来说,如何配置下面这部分无疑很困难,
— 这里我下面做了个修改
图二
注意$param$这里。这个就是自动生成参数,我之前在网上搜了很多配置自动参数的文章,发现大多数都差不多一样的,都是用的groovy脚本进行自定义,
定义模板方法:
选择上图中右上角的Edit variables,如下图所示
图三
这里需要把这段代码
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())
赋值到param 对应的Default value 列,有很多文章告诉复制到Expression???
*** 敲黑板***
但是问题来了,我至今看的文章脚本都是出奇的一致,也导致后面的问题,我生成的参数格式不正确,我试了很多次。。搜了很多次,都没有卵用。然后我生气了,我自己研究了一下.我把这段脚本放到了groovy环境,格式化研究了一下。
图四
这里是我格式化后的代码,然后for循环下的两个if是我根据自己需求加的,有些人应该会发现我图二中$param$的位置是紧跟着上一个参数的,其实这看groovy脚本那段代码就好,可以自己试试看最后的返回结果样式,我放到上一个参数后面,是为了能在没有参数时,不显示空行。大家可以多试试。
下面是经过我改良的脚本代码,才疏学浅,有错忘指正
groovyScript("def result=''; def params=\"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList(); for(i = 0; i < params.size(); i++) {if(params[i] == '') return result;if(i==0) result += '\\n'; result+=' * @param ' + params[i] + ((i < params.size() - 1) ? '\\n' : '')}; return result", methodParameters())
总结:我发先好像很多文章,都是大家抄过来抄过去的,其实截图与内容不符,我只想说一句,你们发文章的时候自己试过了么,能不能不要坑菜鸟,哦,或许也可以理解为是为了激励我们么?但这似乎不是你不负责任的理由吧。我真的很气。。
有问题的可以留言交流一下,希望大家写文章都要亲自尝试,而不是想当然的结果,其实菜鸟们有时会因为操作结果和文章不一样而显得很迷茫。所以,大佬们行行好,别让我们把太多的时间浪费在迷茫上。
看很多小伙伴回复说模板有问题,啊,我贴一下现在用的配置
现在我使用的时候会/**mc然后 tab直接生成注释,一直用的,感觉还好吧。。其实我写这篇只是想把自己踩的坑说出来,希望和我一样的人能避免这个问题,主要还是要大家自己自己研究一下这个模板脚本的写法,然后写出适合自己的东西–
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/188289.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...