标签:03 set name get eclipse jar GetterSetterUtil 版本 class
现在使用eclipse作为开发工具的开发人员越来越少了,对于我这个念旧的人来说,依然喜欢使用eclipse。
今天分享一个新版本eclipse 自动生成getter/setter文档注释的方法,看一下效果图
public class Test {
//姓名
private String name;
/**
* 获取 姓名
* @return name 姓名
*/
public String getName() {
return name;
}
/**
* 设置 姓名
* @param name 姓名
*/
public void setName(String name) {
this.name = name;
}
}
现在网上能搜到的生成getter/setter文档注释都只适用eclipse老版本,不在适用2019-03之后的版本(没有具体统计过,但我用了很久18年版本的eclipse是支持的,为了写这个博客,又专门下载不同版本eclipse进行比较,下载版本截止到2019-03版本,发现已经不能使用老的方式解决)
从2019-03版本后,老的方式已经不在适用,2019-03版本之前的eclipse 自动生成getter/setter文档注释的网上资料还是挺多的,可参考:https://its201.com/article/niuzh/79043964
下载2019-03之后版本的eclipse,按老方法,在eclipse -> plugins下org.eclipse.jdt.ui_xxx.jar 包中是找不到GetterSetterUtil.class 文件的,也就无从替换。
按我这种比较懒惰的人来说,第一想法是从网上找一下解决方案,但无论是百度还是google都没能找到解决方案(也可能搜索关键字不对)。
没有在网上找到解决方案那就只能自己解决,先按老方法找到org.eclipse.jdt.ui_xxx.jar包,然后用压缩工具打开jar包,进入org\eclipse\jdt\internal\corext\codemanipulation 包内,找到与getter/setter有可能有关系AddGetterSetterOperation.class,大致扫了下代码,发现代码中使用GetterSetterUtil类的静态方法,但类中没有找到GetterSetterUtil的引用,同级目录也没有GetterSetterUtil.class,就联想到有引用其他jar包,并且与AddGetterSetterOperation.class所在包名一致,然后就去eclipse -> plugins下与org.eclipse.jdt相同前缀的jar包,通过对比以及打开可能一致的jar包,终于找到org.eclipse.jdt.core.manipulation_xxx.jar,相同的包名下有GetterSetterUtil.class,找到文件就好办了,然后就将网上下载的已经改写后的GetterSetterUtil.class替换,启动eclipse然后悲剧发生了,getter/setter无法生成了,这个时候就想到新版本GetterSetterUtil.class已经跟老版本GetterSetterUtil.class不一致了,那就自己写一个GetterSetterUtil.class,具体编写过程就不放了,完成后,分别在2019-12和2022-03版本进行测试,都成功了。
下面详细说明步骤
1、关闭eclipse,在eclipse->plugins文件夹找到这个jar包org.eclipse.jdt.core.manipulation_xxx.jar,可以用压缩文件打开该jar包,进入org.eclipse.jdt.internal.corext.codemanipulation 目录,
从网盘下载https://pan.baidu.com/s/1AJjnak8e2Cw4omSlGvKmXA?pwd=1234 提取码: 1234,替换jar包中GetterSetterUtil.class
2、重启eclipse,选择菜单window -> preferences
编辑Getters
/**
* 获取 bare_field_comment
* @return ${bare_field_name} bare_field_comment
*/
编辑Setters
/**
* 设置 bare_field_comment
* @param ${param} bare_field_comment
*/
保存配置后,getter/setter时,记得选中如下选项
标签:03,set,name,get,eclipse,jar,GetterSetterUtil,版本,class 来源: https://www.cnblogs.com/ocean-current/p/16496607.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。