<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    大夢想家

    5年開發(fā)工程師,2年實施經(jīng)理,X年售前顧問,......
    數(shù)據(jù)加載中……
    RCP實踐之第三方JAR包
        感謝大家對上一篇文章的拍磚,引起的反響不小,目的達(dá)到了~,希望可以繼續(xù)板兒磚橫飛!
        今天來說說第三方JAR包的引入。RCP開發(fā)(或者plugin開發(fā))中最讓人頭疼就是第三方JAR包的引入了,很多初學(xué)的朋友常常頭疼,介紹的文章也不少了,如果搞不定,自己google一下就可以了。
        為什么第三方JAR包會引發(fā)如此眾多的問題,其實并不是Eclipse的錯,而是先入為主的錯。如果你一開始就就接觸Eclipse開發(fā),以后再做不同java開發(fā),你就會覺得java的類加載機(jī)制是變態(tài)了~Eclipse的類加載機(jī)制是基于OGSI的實現(xiàn),它完成了插件的獨立加載和獨立維護(hù),正是因為這種變態(tài)的類加載機(jī)制,才有了我們頭大的第三方j(luò)ar包的問題,也正是這種偉大的類加載機(jī)制,才有了即插即用的思路的誕生。
        大多數(shù)簡單的RCP項目都是將所有的JAR包放入本地項目中,然后直接進(jìn)引入項目路徑,就開始整了,對于小的應(yīng)用,或者開發(fā)人員少的情況下,這樣是可行的,也是便捷的~但是RCP的目標(biāo)是大型的企業(yè)級應(yīng)用,一個系統(tǒng)由十幾個,幾十個插件組成,是很正常的。所以就要求我們將RCP中所有用到的第三方JAR包統(tǒng)一管理,統(tǒng)一維護(hù),給開發(fā)人員少一些煩惱。
        思路有兩種:
    1.將JAR文件plugin樣子包裝,及新建Plug-in from existing jar archives 項目,然后選擇JAR文件,再取消Unzip the jar archives into the project 選項,然后其它的插件依賴它就可以了。
    2.新建一個不同插件項目,然后把第三方JAR包放入這個項目,然后引入到此項目中,在plugin.xml的runtime配置頁的Exported Packages 選Add... 再選擇要發(fā)布出去的包路徑,然后其他的插件依賴它就可以了。
        官方推薦的方式是第一種,個人認(rèn)為第一種確實很好,可以非常好而且方便的維護(hù)第三方JAR包。但是我還是選擇了第二種方式,理由是,配置文件讀取的問題。
        每一個插件文件都會維護(hù)一份屬于自己的配置文件,只有這樣才能做到自我獨立。但是這兩種方式都不能使其他插件項目的配置文件獨立維護(hù),原因就是Eclipse那討厭又強(qiáng)大的類加載機(jī)制。
        使用第一種方式,配置文件必須放在你記載的進(jìn)來的JAR包的里面,這樣Eclipse類加載機(jī)才會加載并處理,除非選擇了Unzip the jar archives into the project 選項,并把配置文件和一堆的class文件放在同一目錄下類加載機(jī)才能發(fā)現(xiàn)。我想這種方式誰都不會喜歡,要么就是我們要創(chuàng)造自己的JAR包,要么工作臺遍布了各種各樣來自世界各地的class文件。
        使用第二種方式,是通過運(yùn)行時將需要發(fā)布出來供別人依賴的package發(fā)布出來,而配置文件則需要放在此插件項目中。相對而言,這種比上一種有很大的好處,而且也不是那么難維護(hù)。

        以上只是自己項目中的一些總結(jié),關(guān)于第三方JAR包的問題,我查了很多資料,好像逃不過這三種方式(直接在項目中依賴算一種),不知道各位大俠還有沒有更好的辦法,即能處理好第三方JAR包,又能保持各個插件維護(hù)自己獨立的配置文件?

    客戶虐我千百遍,我待客戶如初戀!

    posted on 2007-06-20 21:43 阿南 閱讀(2928) 評論(2)  編輯  收藏 所屬分類: Eclipse-RCP

    評論

    # re: RCP實踐之第三方JAR包 2007-10-26 09:21 施志

    你好, 看了你寫的文章,感覺受益非淺, 但有些地方還是不明白,
    在我將第三方JAR包做成插件 ,在導(dǎo)入時,總是報錯
    懇求 你發(fā)幾篇講解 關(guān)于 Rcp 第三方JAR 包 做成插件導(dǎo)入項目的文章給我, shzhlo@hotmail.com
    非常感謝!
      回復(fù)  更多評論    

    # re: RCP實踐之第三方JAR包 2008-08-06 09:09 shenze

    一樣的問題,就是用官方方法的都不行。
    shenze406@sina.com謝了!
      回復(fù)  更多評論    
    主站蜘蛛池模板: 免费国产a理论片| 亚洲w码欧洲s码免费| 久久精品国产亚洲AV麻豆~| 91免费国产精品| 最新亚洲人成无码网站| 亚洲国产成人一区二区三区| 少妇高潮太爽了在线观看免费| 国产VA免费精品高清在线| 亚洲日产2021三区在线| 亚洲精品WWW久久久久久| 永久在线免费观看| 人成免费在线视频| 亚洲手机中文字幕| 国产午夜亚洲不卡| 成人性生活免费视频| 97国免费在线视频| MM1313亚洲精品无码久久| 亚洲一区二区三区首页| 国产成人aaa在线视频免费观看| 日韩免费人妻AV无码专区蜜桃| 国产天堂亚洲国产碰碰| 亚洲视频一区网站| 亚洲日韩精品无码一区二区三区 | 亚洲Av永久无码精品一区二区| 亚洲精品无码久久久久| 在线精品免费视频| 外国成人网在线观看免费视频| 羞羞漫画在线成人漫画阅读免费| 亚洲国产成人精品电影| 亚洲日韩精品射精日| 四虎成人精品在永久免费| 精品福利一区二区三区免费视频| 本道天堂成在人线av无码免费| 亚洲区视频在线观看| 亚洲色欲一区二区三区在线观看| 高清国语自产拍免费视频国产| 亚洲一级毛片免费看| 97国免费在线视频| 精品久久久久久国产免费了| 国产精品亚洲专区无码WEB| 亚洲午夜精品一区二区公牛电影院 |