善用開源插件 增強NetBeans開發

火星人 @ 2014-03-10 , reply:0


  【編者按】NetBeans IDE本身已經非常強大,不過,如果你學會通過那些可滿足你需要的插件來對其進行擴展,你會發現該工具用起來會更順手.Java專家Jeff Friesen在本篇文章中介紹五個開源NetBeans插件,讓你可以查看NetBeans文件系統,瀏覽Windows系統上的圖片,檢查代碼的標準兼容性,為Java類增加屬性,以及更輕鬆的進行OpenGL開發.不過,這只是敲門磚,你可以學會如何創建滿足自己需要的NetBeans插件.

  2008年年初,我使用NetBeans IDE 6.1 with JavaFX來進行編程.在使用這個IDE的過程中,我碰到了插件使用的問題,通過安裝這些模塊到NetBeans中,可以讓該IDE具有新的功能.

  在本篇文章中,我將從眾多開源NetBeans插件中選取五個來向大家介紹,從NetBeans插件網站(http://plugins.netbeans.org/PluginPortal/faces/MainPage.jsp)上你都可以免費下載它們.我將介紹每一個插件的用途、它的開源許可類型和它適用的平台.另外,我將簡單的介紹一下每個插件在NetBeans IDE 6.5中的使用.最后,我將和大家一起看一下如何創建屬於自己的插件,用其來訪問NetBeans API Javadoc.

  在看完本篇文章后,你將會了解這五個非常有用的插件.更重要的是,你會熟悉NetBeans的插件架構,掌握了自己創建插件的步驟.

  一、File System Displayer:查看NetBeans文件系統

  NetBeans system filesystem是NetBeans配置數據的中心存儲 style="COLOR: #000000" href="http://storage.it168.com/" target=_blank>存儲器.File System Displayer插件(http://plugins.netbeans.org/PluginPortal/faces/PluginDetailPage.jsp?pluginid=14187),由NetBeans專家Geertjan Wielenga開發,可以讓你在IDE內瀏覽NetBeans system filesystem.該插件在通用開發與銷售許可(Common Development and Distribution License,CDDL)開源協議下提供,其適用平台包括Solaris、Linux、Mac OS X和Windows.

  在File System Displayer詳細信息頁面(http://plugins.netbeans.org/PluginPortal/faces/PluginDetailPage.jsp?pluginid=14187)上,點擊Download按鈕,下載1226158890776_org-demo-fsdisplayer.nbm模塊文件.然後啟動NetBeans 6.5,通過以下步驟來安裝這個插件到IDE中:

  1、從主菜單中選擇Tools>Plugins,打開插件對話框.

  2、在該對話框中切換到Downloaded標籤.

  3、點擊Add Plugins按鈕.

  4、在Add Plugins文件選擇器中,瀏覽包含1226158890776_org-demo-fsdisplayer.nbm文件夾,並選中這個文件,然後點擊Open按鈕.這樣File System Displayer插件將會顯示在待安裝插件列表中.

  5、點擊插件對話框的Install按鈕.

  6、在出現的NetBeans IDE安裝對話框中,點擊下一步.你將會看到一個驗證警告對話框提示該插件未經簽名.點擊該對話框中的Continue按鈕來忽略這個警告.

  7、安裝完成後,點擊安裝對話框中的Finish按鈕,關閉該插件對話框.

  安裝完畢后,NetBeans中會出現該插件的FsDisplayer Window瀏覽窗口組件,它顯示了配置數據架構,如圖1所示.

  圖1、FsDisplayer Window在Projects、Files和Services標籤旁邊

  運行時,該文件系統由每一個模塊基於XML的layer file中的信息組成.每一個layer file定義了被合併到system filesystem中的文件夾和文件.其它模塊可以在這些文件夾中存儲文件或對象;定義模塊可以掃描每一個文件夾的內容,並可以對內容進行想要做的修改.

二、PicturesExplorer:在Windows上查看圖片

  Kunal Modi的PicturesExplorer插件(http://plugins.netbeans.org/PluginPortal/faces/PluginDetailPage.jsp?pluginid=5895),可以讓Windows XP用戶在NetBeans內查看「我的圖片」文件夾中的內容;無需離開該IDE就可打開一個圖片查看器.該插件在GPLv2下提供.

  點擊PictureExplorer詳細信息頁面(http://plugins.netbeans.org/PluginPortal/faces/PluginDetailPage.jsp?pluginid=5895)中的Download按鈕,下載PictureExplorer的1202697173670_org-modules-sack-picturesexplorer.nbm模塊文件.然後通過上面的步驟來安裝該插件.安裝完成後,從Window菜單中選擇Pictures來顯示包含「我的圖片」內容的Pictures窗口.

  你可以對當前顯示的圖片進行放大縮小操作,如圖2所示.

  圖2、縮放圖片

  通過其它按鈕,你可以恢復該圖片到其原始尺寸,也可以通過預先定義好的比例來縮放圖片,或者按照自己設定的比例來進行圖片縮放.

  三、Checkstyle 4.3插件:檢查代碼的標準兼容性

  Checkstyle(http://www.javaworld.com/javaworld/jw-11-2008/jw-11-checkstyle1.html)可以幫助你編寫遵循指定編程標準的Java源代碼.該工具可自動完成檢查代碼標準兼容性的任務.通過Andrea Matsunaga的Checkstyle 4.3插件(http://plugins.netbeans.org/PluginPortal/faces/PluginDetailPage.jsp?pluginid=4552),可以讓NetBeans具有Checkstyle的功能,該插件在GPLv2下提供,適用平台包括Solaris、Linux、Mac OS X和Windows.

  點擊Checkstyle 4.3詳細信息頁面(http://plugins.netbeans.org/PluginPortal/faces/PluginDetailPage.jsp?pluginid=4552)中的Download按鈕,下載42267_com-ammatsun-checkstyle4nb-4.3.1.nbm模塊文件,然後通過上述步驟安裝該插件.安裝完成後,選擇打開任意Java源代碼文件,然後點擊Checkstyle圖標(主工具欄最右邊的圖標)來對該代碼進行檢查,如圖3所示.

  圖3、點擊Checkstyle圖標檢查當前Java源代碼文件

  Checkstyle默認按照Sun的Java代碼約定來檢查代碼,不過,你可以讓它支持不同的編碼標準,方法是:選擇Tools>Options,然後從Options對話框的Checkstyle標籤頁中,選擇合適的Checkstyle配置和屬性文件.如果你希望了解如何在Checkstyle中開發新的編碼標準,需要查看Checkstyle的文檔.

  四、Add Property:為Java類增加屬性

  許多開發者希望Java SE 7可以引入新的語言功能,其中一個希望增加的功能就是properties.如果你在Google中搜索「java 7 property」,你將會發現該話題已經被人們所廣泛討論,關於其語法形式的觀點到處皆是.我們在繼續等待Java SE 7的屬性支持的同時,可以先來看一下Sandip V. Chitale的Add Property插件.

  Add Property在CDDL許可下提供,其適用平台包括Solaris、Linux、Mac OS X和Windows.它向Java類增加屬性非常簡單.

  訪問該插件的詳細信息頁面(http://plugins.netbeans.org/PluginPortal/faces/PluginDetailPage.jsp?pluginid=3973),點擊Download按鈕,下載1198476035439_org-netbeans-modules-java-addproperty.nbm模塊文件,然後安裝該插件.

  現在我們就可以開始使用該插件了.啟動新建項目嚮導,創建一個名為Employee的Java應用程序項目.設定該項目的package為employee,其主類為Main.其框架代碼與圖3所示類似.

  接下來,我們需要引入一個name屬性來表示員工的姓名.選擇Source>Add Property,然後在彈出的Add Property對話框的Name欄位中指定名稱.圖4所示對話框顯示了所產生的屬性代碼.

  圖4、String的默認屬性類型

  點擊OK,在插入符位置插入代碼.如果插入符位置不在一個類內,會導致代碼不能編譯.在這種情況下,你需要通過Edit>Undo來取消插入操作,然後重新設定插入符的位置,再次啟動Add Property對話框,點擊OK按鈕.這個對話框會記住此前的設置.

  Add Property讓你可以進行廣泛的定製操作.舉例來說,你可以創建一個bound屬性.如果你需要進行一個它所不支持的特殊定製,你需要對樣本文件模板進行修改.按照以下步驟訪問這個模板:

  1、選擇Tools>Templates.

  2、在彈出的模板管理器對話框中,選擇並展開org.netbeans.modules.java.addproperty模板種類文件夾.

  3、在該文件夾下選擇AddProperty.freemarker模板,然後點擊打開按鈕.

  圖5顯示了該模板的一部分.

  圖5、包含特定${identifier}佔位符和類似HTML的<#if>塊標記的模板

  從圖5中可以看出,該模板中包含了不同的${identifier}佔位符,其中identifier命名了一個特殊變數.每一個佔位符的值被插入到生成代碼中.例如,圖4對話框中Type文本框中的String值將通過${type}佔位符插入到生成代碼中.

  圖5中還有不同的<#if identifier>標籤,其中identifier命名了一個特定變數.變數值為布爾表達式,來決定<#if identifier>和之間的代碼是否被插入到生成代碼中.例如,如果static選框被選中,<#if static >static 就會插入static到生成代碼中.

  儘管圖5所示模板非常易於理解,通過以下幾個複雜的例子可以加深你的理解:

  ·${access}插入選定的private、protected或public單選按鈕的名稱到生成代碼中.如果package被選中,則不執行任何插入操作.

  ·當Generate Javadoc選框被點擊時,以下示例將插入Javadoc到生成代碼中.在Javadoc內的兩次出現${name},實現了對屬性名稱的擴展.

  <#if generateJavadoc >

  
/**

  
* Get the value of ${name}

  
*

  
* @return the value of ${name}

  
*/

  ·return <#if !static >this.${name};如果static選框未被選中,插入this.前綴,後面跟著屬性的名稱和一個分號,到生成代碼中.

  五、NetBeans OpenGL Pack:簡化OpenGL開發

  Michael Bien為我們帶來了NetBeans OpenGL Pack(http://plugins.netbeans.org/PluginPortal/faces/PluginDetailPage.jsp?pluginid=3260),讓我們可以在NetBeans內可以實現一個易用的OpenGL開發環境.這個插件提供了幾個模塊,諸如OpenGL Shading Language(GLSL)陰影編輯器和OpenGL性能查看器,它還包含JOGL演示和來自OpenGL編程指南的所有OpenGL示例.NetBeans OpenGL Pack在GPLv2授權下提供,其適用平台包括Solaris、Linux、Mac OS X和Windows.

  點擊NetBeans OpenGL Pack詳細信息頁面(http://plugins.netbeans.org/PluginPortal/faces/PluginDetailPage.jsp?pluginid=3260)中的Download按鈕,下載NetBeans OpenGL Pack的227048417356_netbeans-opengl-pack_0.5.3.zip壓縮文件.解壓縮后,你將會發現幾個NBM文件.在安裝它們之前,你選擇所有需要安裝的模塊,如圖6所示.

  圖6、點擊安裝按鈕開始安裝選定模塊

  安裝完NetBeans OpenGL Pack后,你可以立即在NetBeans中嘗試運行OpenGL演示程序.例如,啟動新建項目嚮導,並展開OpenGL分類目錄(如圖7所示),選擇演示程序子目錄,然後選擇JOGL Hardware Shadow Mapping演示項目.

  圖7、選擇JOGL演示

  點擊下一步,然後點擊完成,NetBeans會基於所選的演示創建一個新項目.如圖8所示,你可以查看並編輯該演示的源代碼,編譯並運行該演示.

  圖8、在NetBeans中可以輕鬆編輯、編譯和運行JOGL演示

  六、推出你自己的插件

  在體驗了上述NetBeans插件后,你可能希望創建滿足自己需要的特定插件.如果你是一個新手,可能會覺得有些難度,不過幸運的是,NetBeans大大簡化了插件開發.

  下面我將通過一個簡單的例子來對此進行說明.在該示例中,在你選擇一個菜單條目時,該插件將啟動一個Web瀏覽器,並顯示NetBeans APIDoc文檔的起始頁.當你準備創建一個充分利用不同NetBeans APIDoc的複雜插件時,快速訪問這個文檔是非常有幫助的.

  圖9、選擇Helper>Show NetBeans API Documentation來快速訪問NetBeans APIDoc Javadoc

  為了創建這個插件,你需要創建並配置一個新NetBeans項目:

  1、啟動NetBeans IDE 6.5.

  2、選擇File>New Project,啟動新建項目對話框.

  3、在該對話框的Choose Project面板上,從Categories列表中選擇NetBeans Modules,從Projects列表中選擇Module.點擊下一步.

  4、在之後的名稱和位置面板上,輸入NetBeansAPIDoc作為項目名稱,記得一定要選上Standalone Module單選按鈕.然後點擊下一步.

  5、在最后的Basic Module Configuration面板上,在代碼基(Code Name Base)文本框中輸入org.myorg.netbeansapidoc.選中Generate XML Layer選框,然後點擊完成按鈕.

  接下來,你需要創建一個操作來啟動Web瀏覽器,並通過菜單條目來調用該操作:

  1、在項目窗口中,右鍵點擊NetBeansAPIDoc項目名稱.

  2、在彈出菜單中,選擇New>Action.這將啟動新的Action對話框.

  3、在該對話框的操作類型面板上,選中Always Enabled單選按鈕,然後點擊下一步.

  4、在接下來的GUI Registration面板中:

  ·在Category下拉列表中選擇Help類.

  ·選中Global Menu Item選框.

  ·在Menu下拉列表中選擇Helper作為菜單.

  ·在Position下拉列表中選擇「Javadoc References - HERE - 」作為其位置.

  ·去掉Global Toolbar Button和Global Keyboard Shortcut選框的勾選.

  ·點擊下一步.

  5、在最后的Names、Icon和Location面板中,在CLASS Name文本欄位輸入ShowNetBeansAPIDoc,在Display Name 文本欄位輸入Show NetBeans API Documentation,然後點擊Finish按鈕.同時,NetBeans創建一個ShowNetBeansAPIDoc.java源代碼文件,其主要內容在一個新標籤頁中顯示,如圖10所示.

  圖10、當選擇Show NetBeans API Documentation菜單條時,會調用actionPerformed()方法.

  最后,你需要告訴actionPerformed()方法啟動瀏覽器,並讓其顯示NetBeans APIDoc文檔起始頁.使用如下代碼段替換//TODO實現操作部分.

try
{


URLDisplayer.getDefault()
.showURL(new URL("http://bits.netbeans.org/dev/javadoc/"));
}
catch (Exception ex)
{
return;
}

  完成替換后,你會發現NetBeans不能發現URLDisplayer和URL類.它會通過在相關類名稱下顯示紅色波紋線的形式來報告這個問題.通過以下幾步來改正這個問題:

  1、在Projects窗口中,右鍵點擊NetBeansAPIDoc.

  2、從彈出菜單中選擇Properties菜單條,啟動項目屬性對話框.

  3、從Categories列表中選擇Libraries.

  4、點擊與Module Depencies列表相關的Add按鈕,啟動Add Module Dependency對話框.

  5、在Filter文本框中,輸入URLDisplayer.點擊OK按鈕.

  6、點擊OK關閉項目屬性.

  7、右鍵點擊ShowNetBeansAPIDoc.java中的任意地方,從彈出菜單中選擇Fix Imports,啟動Fix All Imports對話框.

  8、點擊OK.該IDE將把import java.net.URL;和import org.openide.awt.HtmlBrowser.URLDisplayer;聲明加入到ShowNetBeansAPIDoc.java中.

  通過創建一個NBM文件,你可以與其它開發者分享一個插件.例如,你可以創建一個org-myorg-netbeansapidoc.nbm文件來發送該插件給自己的朋友,方法是:右鍵點擊NetBeansAPIDoc項目名稱,從彈出菜單中選擇Create NBM.在我的Windows XP平台上,org-myorg-netbeansapidoc.nbm文件被保存在C:Documents and SettingsJeff FriesenMy DocumentsNetBeansProjectsNetBeansAPIDocbuild目錄下.

  結論

  通過充分利用NetBeans Plugin Portal網站上提供的插件,我們可以大大提高NetBeans開發效率.本篇文章我簡單介紹的幾個插件只是其中很少的一部分.當然,如果你找不到一個可以滿足你需要的插件,我希望本篇文章也可以讓你動手去自己創建一個.




[火星人 via ] 善用開源插件 增強NetBeans開發已經有174次圍觀

http://www.coctec.com/docs/java/show-post-61983.html