好好生活,努力工作,天天向上!

          BlogJava 首頁(yè) 新隨筆 聯(lián)系 聚合 管理
            46 Posts :: 1 Stories :: 178 Comments :: 0 Trackbacks

            在Eclipse插件開(kāi)發(fā)過(guò)程中,為了更好的維護(hù)和管理插件項(xiàng)目構(gòu)建路徑,最好將以前的單純的Jar包轉(zhuǎn)換成Eclipse的插件包,如果屬于開(kāi)源的類(lèi)庫(kù)的話(huà),我們可以獲得它的源代碼文件,在Eclipse中可以和容易的查看和跟蹤源文件,但有時(shí)我們也會(huì)碰到Source not found 的提示,比如這樣:

           

            碰到這樣的情況,如果有源代碼的話(huà),可以新建一個(gè)源代碼插件,這樣就可以直接查看源代碼文件,否則的話(huà)只能想其他辦法,比如裝一個(gè)反編譯的插件,不過(guò)有時(shí)好像反編譯的不好,處理常量的時(shí)候會(huì)亂,而且還沒(méi)有JavaDoc文件,這里我來(lái)說(shuō)明一下源代碼插件的制作。

            如果我們想新建一個(gè)Eclipse插件,比如我正在用到的Apachedbutil工具,為了讓Eclipse能夠根據(jù).class文件自動(dòng)查找對(duì)應(yīng)的.java文件,我們需要給插件包制作一個(gè)源代碼插件,這個(gè)過(guò)程有點(diǎn)麻煩,現(xiàn)在把打包的過(guò)程寫(xiě)下來(lái),以后可以隨時(shí)查詢(xún)。

            我們先新建一個(gè)dbutil的插件包,比如名稱(chēng)為“com.cnex.org.apache.dbutil”,這個(gè)是項(xiàng)目的層次結(jié)構(gòu):

           
           

            我們?cè)陧?xiàng)目中新建一個(gè)lib的文件夾,然后將dbutil.jar及相關(guān)的jar包放入到這個(gè)文件夾,雙擊打開(kāi)META-INF文件夾下的MANIFEST.MF文件,切換到“Runtime”選項(xiàng)卡中,在右下角的ClassPath組中點(diǎn)擊“Add”按鈕,將lib目錄下的jar文件添加到插件的構(gòu)建路徑中,然后在“Exported Packages”組中點(diǎn)擊“Add”按鈕,將jar文件的Java包導(dǎo)出讓其他插件項(xiàng)目可以引用。下面是截圖:

            

            這樣就基本完成了,我們可以修改插件的一般信息,比如插件的版本好,插件的bundle名,稱(chēng),添加對(duì)應(yīng)的依賴(lài)性,在這里我們使用的dbutil-2.4.4版本,我們?cè)贛ANIFEST.MF文件的Overview選項(xiàng)卡修改對(duì)應(yīng)的信息:

            
             然后我們導(dǎo)出這個(gè)插件包,因?yàn)椴捎面溄觠ar包的方式,我們將它導(dǎo)出成文件夾插件的方式,右鍵選擇com.cnex.org.apache.dbutil插件,然后選擇“Export” -> "File System" ,選擇導(dǎo)出的位置,點(diǎn)完成就行了。
           

            插件導(dǎo)出以后,我們只需要lib文件夾、META-INF文件夾和build.properties文件,其他的文件可以刪除。我們將導(dǎo)出的插件文件夾加上版本號(hào):“com.cnex.org.apache.dbutil_2.4.4”,這樣Eclipse的插件就完成了


            接下來(lái)我們插件的源代碼插件,新建一個(gè)名稱(chēng)為“com.cnex.org.apache.dbutil.source”插件工程,名稱(chēng)命名規(guī)范是剛才的插件名稱(chēng)后面在加上.source,插件工程的文件層次結(jié)構(gòu)為:

           
           

            在我們新建完“com.cnex.org.apache.dbutil.source”插件工程后,在src源文件夾下新建一個(gè)文件夾,文件夾的命名和我們剛才新建導(dǎo)出后的插件文件夾名稱(chēng)要是一樣的,這里是com.cnex.org.apache.dbutil_2.4.4,接著再在這個(gè)文件夾下新建一個(gè)lib的文件夾,下面放我們的源代碼包,這里的壓縮包必須是zip格式的,而且這個(gè)壓縮包的文件的第一層一個(gè)就開(kāi)始出現(xiàn)源代碼包的包名了:

           


            也就是說(shuō)你打開(kāi)這個(gè)zip包應(yīng)該直接看到上面的文件夾,這個(gè)zip文件命名也有講究的,名稱(chēng)要和你新建的Eclipse插件中引用的jar文件相關(guān),比如你的插件中引用的是“dbunit-2.4.4.jar”,那么這個(gè)源代碼壓縮文件名稱(chēng)應(yīng)該為“dbunit-2.4.4src.zip”,這樣就基本完成了。


           導(dǎo)出方式和剛才導(dǎo)出插件包方式類(lèi)似。這樣我們的源代碼插件就新建完成了!


          posted on 2009-05-22 09:31 VWPOLO 閱讀(2169) 評(píng)論(3)  編輯  收藏 所屬分類(lèi): Eclispe 插件開(kāi)發(fā)

          Feedback

          # re: 創(chuàng)建和打包Eclipse源代碼插件 2009-05-22 10:16 x.matthew
          真麻煩。Eclipse3.2之后,Eclipse在提示source not found的時(shí)候,直接 attach source把源代碼zip文件引用就可以解決了。  回復(fù)  更多評(píng)論
            

          # re: 創(chuàng)建和打包Eclipse源代碼插件 2009-05-22 10:54 VWPOLO
          @x.matthew
          如果文件一多,你能確定你可以很快的找到對(duì)應(yīng)的源代碼文件?  回復(fù)  更多評(píng)論
            

          # re: 創(chuàng)建和打包Eclipse源代碼插件 2009-05-24 09:31 Edward's
          用maven不是更好?  回復(fù)  更多評(píng)論
            

          主站蜘蛛池模板: 商河县| 铁力市| 陆良县| 虞城县| 色达县| 富顺县| 聂荣县| 沧州市| 固镇县| 望谟县| 铜梁县| 工布江达县| 紫金县| 社会| 双辽市| 凤城市| 宁武县| 长沙市| 姜堰市| 微山县| 西乌珠穆沁旗| 万盛区| 兖州市| 寿宁县| 勃利县| 湟中县| 洛阳市| 大余县| 突泉县| 龙州县| 壶关县| 阳新县| 阳信县| 柞水县| 达拉特旗| 京山县| 云安县| 乌兰县| 呼图壁县| 蕲春县| 海丰县|