netbeans7.4_NetBeans 7.1:创建自定义提示
netbeans7.4
我已經在帖子中對我最喜歡的NetBeans提示進行了討論,這些帖子中包含用于現代化Java代碼的七個NetBeans提示和七個不可或缺的NetBeans Java提示 。 這兩個帖子中涉及的十四個提示僅占NetBeans支持的“即開即用”提示總數的一小部分。 但是,由于NetBeans 7.1使得編寫自定義提示成為可能,因此NetBeans用戶可以獲得更大的靈活性。 我在這篇文章中看一個簡單的例子。Geertjan Wielenga 在NetBeans IDE 7.1中發布的自定義聲明性提示首先介紹了NetBeans的“檢查和變換”(又名“ 檢查和重構 ”)對話框,該對話框可從“重構”菜單中獲得(該對話框可通過下拉菜單獲得)菜單欄上的“重構”菜單,或者通過在NetBeans編輯器中單擊鼠標右鍵。 以下屏幕快照顯示了它的外觀。
“檢查和轉換”對話框的“檢查”字段允許NetBeans用戶定制應檢查的項目或文件。 “檢查和轉換”對話框的“使用”部分允許NetBeans用戶指定要檢查的提示。 在這種情況下,我正在使用自定義提示進行檢查,并且可以通過單擊“管理”按鈕并選擇“自定義”復選框來看到它。 請注意,如果初次使用“自定義”不是一個選項,則可能需要單擊左下角的“新建”按鈕。
當我單擊“管理”并選中“自定義”框時,它會展開,并且可以看到新創建的“檢查”提示。 如果單擊此名稱,則可以重命名,并且在這種情況下也可以重命名。 重命名的檢查(“ CurrentDateDoesNotNeedSystemCurrentMillis”)顯示在下一個屏幕快照中。
要創建提示并提供框中顯示的描述,我可以單擊“編輯腳本”按鈕。 這樣做會導致在下一個屏幕快照中顯示小的編輯器窗口。
如果需要更多空間來編輯自定義檢查/提示,則“在編輯器中打開”按鈕將導致在NetBeans文本編輯器中打開文本,在該文本編輯器中可以編輯普通的Java代碼和XML代碼。
有了自定義檢查/提示后,就該在一些Java代碼上進行嘗試了。 以下代碼清單使用了對System.currentTimeMillis()的多余調用,并將其結果傳遞給java.util.Date單長參數構造函數 。 這是不必要的,因為Date的無參數構造函數將根據當前時間(現在的時間)自動實例化Date的實例。
RedundantSystemCurrentTimeMillis.java
package dustin.examples;import static java.lang.System.out; import java.util.Date;/*** Simple class to demonstrate NetBeans custom hint.* * @author Dustin*/ public class RedundantSystemCurrentTimeMillis {public static void main(final String[] arguments){final Date date = new Date(System.currentTimeMillis());out.println(date);} }上面的代碼可以正常工作,但是可能更簡潔。 當我告訴NetBeans在“檢查和轉換”對話框中將我的新檢查與該項目關聯時,NetBeans可以為我標記此標記并建議修復。 接下來的三個屏幕快照展示了NetBeans將用黃色燈泡圖標和黃色下劃線標記警告,在單擊燈泡時將推薦該修復程序,并在選擇該燈泡時實施建議的修復程序。
如上所示,一個簡單的自定義提示允許NetBeans根據我的請求標識,標記和修復不必要的System.curentTimeMillis() 。 我之前寫過,NetBeans的提示非常方便,因為它們實際上對Java開發人員做了三件事:自動為開發人員標記需要改進的代碼區域,經常在需要時自動解決問題,以及交流更好的Java編寫方法。 對于這種情況的最后一個好處,此自定義提示的存在有助于向其他Java開發人員傳達有關Date類的更多知識,以及在需要當前日期/時間時實例化它的更好方法。
使用NetBeans的自定義提示最困難的方面是查找有關如何使用它們的文檔 。 當前可用的最佳資源似乎是NetBeans 7.1發行說明 ,幾篇Wielenga帖子( NetBeans IDE 7.1中的自定義聲明提示 , Oh No Vector ! 、 Oh No @Override!/ Oh No Utilities.loadImage! )和Jan Lahoda的jackpot30規則語言 (涵蓋自定義檢查/提示所使用的規則語言語法 ,并顯示在上面的簡單示例中)。 NetBeans IDE Java編輯器教程中的“通過檢查和轉換進行重構”還包括有關管理自定義提示的部分 。 希望能夠解決Bug 210023的問題。
我的示例自定義NetBeans提示專門用于Date類。 一個有趣且有點相關的StackOverflow線程詢問是否可以創建NetBeans自定義提示來建議使用Joda Time而不是Date或Calendar 。 有關該線程的響應,請參閱《 NetBeans Java提示模塊教程》 。 查看該教程會提醒我,本文中概述的方法以及NetBeans 7.1中提供的方法肯定已改進并且更易于使用。
順便說一句,在NetBeans 7.1中很容易編寫類似所引用的StackOverflow線程中所要求的提示。 此示例中沒有轉換,因為將Date類更改為Joda Time類可能需要比簡單轉換所能處理的代碼更改更多。 因此,該提示變成簡單地建議更改為Joda Time的提示。 下一個屏幕快照顯示了簡單的提示以及它們在NetBeans編輯器中的顯示方式。
每個版本的NetBeans似乎都會為NetBeans支持的大量有用提示添加更多有用的提示。 但是,對于NetBeans開發人員來說,不可能添加每個團隊或項目可能想要的所有提示。 此外,不希望有每一個可能的提示,即每個社區成員都可能想出來添加到IDE中。 因此,在NetBeans中指定自定義提示的能力以及將這些提示選擇性地應用到項目和文件的能力都是非常需要的功能。
參考:在Inspired by Actual Events博客上,由我們的JCG合作伙伴 Dustin Marx 創建了NetBeans 7.1自定義提示 。
翻譯自: https://www.javacodegeeks.com/2012/05/netbeans-71-create-custom-hint.html
netbeans7.4
總結
以上是生活随笔為你收集整理的netbeans7.4_NetBeans 7.1:创建自定义提示的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 杭州亚运会发布总赛程 3.0 版:电竞项
- 下一篇: JavaOne 2015 –第二十版十大