eclipse 自動為getter和setter新增中文註釋
在我們使用eclipse進行開發的時候常常會使用到eclipse自動生成getter和setter的功能,然後大多情況下eclipse為我們生成的getter和setter都是無法在專案中使用的。還需要我們自己手動修改。
比如下面這個類。我使用了eclipse的自動生成getter和setter的功能並且選擇了添加註釋。最終的類為如下
public class User { //使用者名稱 private String name; /** * @return the name */ public String getName() { return name; } /** * @param name the name to set */ public void setName(String name) { this.name = name; } }
但是我們想要的不是這樣一個註釋。希望能夠產生如下的程式碼註釋
public class User { // 使用者名稱 private String name; /** * 返回 使用者名稱 * * @return 使用者名稱 */ public String getName() { return name; } /** * 設定 使用者名稱 * * @param name * 使用者名稱 */ public void setName(String name) { this.name = name; } }
如何來做呢?
現在我就來說明一下我的修改方式。
1、第一步是查詢到eclipse自動生成getter和setter的類檔案。我給大家找好了在eclipse\plugins\org.eclipse.jdt.ui_xxxxxxxx.jar\org\eclipse\jdt\internal\corext\codemanipulation\GetterSetterUtil.class
2、我們修改這個class的原始碼然後編譯替換。這個class原始碼一般在對應的eclipse\plugins\org.eclipse.jdt.ui.source__xxxxxxxx.jar\org\eclipse\jdt\internal\corext\codemanipulation\GetterSetterUtil.java
我的eclipse版本為Version: 4.3.1
我把已經修改好和編譯好的檔案傳上來。在你們使用這個的時候記得先把原始jar進行備份。以免悲劇。
關於class的替換過程我還是簡單說下。免得有的同學不明白。
1、直接用壓縮檔案開啟eclipse\plugins\org.eclipse.jdt.ui_xxxxxxxx.jar
2、找到org\eclipse\jdt\internal\corext\codemanipulation\GetterSetterUtil.class
3、將GetterSetterUtil.class替換為我們自己修改好的GetterSetterUtil.class(eclipse沒有執行的狀態下才能替換)
使用方法
1、在eclipse中window-》preferences->java->code style->code templates
2、找到comments
3、 展開找到getters點選Edit輸入如下內容
/**
* 返回 bare_field_comment
*
* @return bare_field_comment
*/
4、找到setters 點選edit 輸入如下內容
/**
* 設定 bare_field_comment
*
* @param ${param}
* bare_field_comment
*/
5、儲存
bare_field_comment :是用我們屬性上面的這個註釋來替換。如果屬性上面沒用註釋的話。那麼會直接輸出bare_field_comment
使用
public class User {
// 使用者名稱
private String name;
}
在我們自動生成getter和setter的時候同樣選中 generate method comments 如果屬性上面有單行註釋那麼這個註釋就會被我們使用到。
最終生成效果如下
public class User {
// 使用者名稱
private String name;
/**
* 返回 使用者名稱
*
* @return 使用者名稱
*/
public String getName() {
return name;
}
/**
* 設定 使用者名稱
*
* @param name
* 使用者名稱
*/
public void setName(String name) {
this.name = name;
}
}
注意的是
多行註釋是不被識別的。這個是故意遮蔽掉的。
下載地址
http://download.csdn.net/detail/kongguoan/7694553