posts - 31,  comments - 31,  trackbacks - 0
                 為了滿足將plugin工程打成jar包,但是spring的配置文件不打進jar包的需求。很多時候我們為了可以方便手工配置spring的一些信息,而不用將jar解壓而從新壓縮,我們需要把Spring的配置文件放在plugin的jar包外這時,如果沒有正確的使用spring的Resource就不能加載spring的配置文件,經過多次嘗試終于找到一個比較合適的方法,與大家交流。
          public static BeanFactory getFactory() {
                  
          if (factory == null{
                      FileSystemResource resource 
          = new FileSystemResource("appcontextclient.xml");
                      factory 
          = new XmlBeanFactory(resource);
                  }

                  
          return factory;

              }

                  將appcontextclient.xml文件放到工程根目錄下,發布時將appcontextclient.xml放入到你的eclipse的安裝目錄即可(與eclipse的exe執行文件相同的位置),如果需要可在appcontextclient.xml文件前加入相關的路徑來更改你的目錄(但是有可能在調試過程中必須要把appcontextclient.xml文件放到你的eclipse IDE的安裝目錄里,因為大部分時間我們的eclipse IDE是何 workspace分開存放的,這樣我們在調試的時候非常別扭,要到IDE里去修改配置文件)。
                  以上方法并不是唯一的,只是我感覺用起來比較合適的,這樣在調試時既可以保證appcontextclient.xml文件在工程目錄范圍內,有可以在發布時使文件保持在安裝目錄而不是運行環境的workspace的臨時目錄里。
                  同時介紹幾個方法可以eclipse方法獲得eclipse工具的幾個重要路徑(注:"IDE"為我的plugin工程的PLUGIN_ID)
                  Platform.getInstallLocation().getURL()                                                 
                  file:/F:/tools/java/eclipse/eclipse-SDK-3.3-win32/eclipse/             
                  這是我的eclipse IDE的安裝目錄
                      
                  Platform.getLocation()                                                                        
                  D:/runtime-IDE.product                                                               
                  這是我調試插件時生成的臨時運行環境目錄,是在調試IDE工程時生成的,就是發布時插件所屬eclipse運行環境的WorkSpace目錄
                       
                  Platform.getInstanceLocation().getURL()                                             
                  file:/D:/runtime-IDE.product/                                                       
                   這個跟上面的一樣
                       
                  Platform.getLocation()                                                                        
                  D:/runtime-IDE.product                                                              
                   這個跟上面的也一樣
                  
                  Platform.getLogFileLocation()                                                             
                  D:/runtime-IDE.product/.metadata/.log                                         
                  運行環境的日志文件路徑,發布時插件所屬eclipse運行環境的WorkSpace目錄下的/.metadata/.log 
                   
                  Platform.getStateLocation(Platform.getBundle("IDE"))               
                  D:/runtime-IDE.product/.metadata/.plugins/IDE                           
                  運行環境中IDE的一個臨時目錄,發布時插件所屬eclipse運行環境的WorkSpace目錄下/.metadata/.plugins/IDE
                       
                  Platform.getUserLocation()                                                       
                  file:/C:/Documents and Settings/XX/user                                     
                   這是我的文檔的路徑(把用戶名X掉,哈哈)

                  Platform.getBundle("IDE").getLocation()                                    
                  update@D:/WorkSpace/IDE/                                                     
                  我的IDE工程的路徑,對應發布時插件的jar本身,在這個目錄下的文件將全部包含在發不得jar里。

                  Platform.getConfigurationLocation().getURL()       
                  file:/D:/WorkSpace/.metadata/.plugins/org.eclipse.pde.core/IDE.product/  
                  eclipse IDE 自己建的目錄

                  eclipse 本身也有很多加載資源文件的方法可以在org.eclipse.core.runtime.Platform這個類里找到,具體的就請大家找找API吧
          posted on 2008-01-05 21:35 小平 閱讀(2014) 評論(0)  編輯  收藏 所屬分類: springeclipse plugIn
          <2008年1月>
          303112345
          6789101112
          13141516171819
          20212223242526
          272829303112
          3456789

          常用鏈接

          留言簿(2)

          隨筆分類

          隨筆檔案

          framework

          j2me

          java

          linux

          web

          其他

          友情鏈接

          素材

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 陆良县| 永善县| 吴忠市| 秀山| 唐河县| 清水河县| 木兰县| 临泉县| 三明市| 新沂市| 精河县| 新河县| 北辰区| 合阳县| 淮滨县| 潜江市| 徐州市| 丹凤县| 将乐县| 宝鸡市| 大石桥市| 岳阳市| 教育| 全南县| 天全县| 西丰县| 龙游县| 巢湖市| 陆河县| 万盛区| 阿图什市| 星子县| 大埔县| 中卫市| 大兴区| 西乌| 南岸区| 芜湖市| 清原| 舟曲县| 河源市|