Equinox P2 介紹(一)Getting Start


一直覺得 Equinox 的 P2 是個神秘的東西,常常使得 Eclipse 或 Equinox 表現出一些奇怪的行為,於是找來官方文檔讀一讀,試圖更好地理解與應用 Equinox 。

官方文檔很多,只能挑其中比較關注的部分來閱讀,邊看邊記下吧。

1、 Getting Start ---原文:http://wiki.eclipse.org/Equinox/p2/Getting_Started

  P2 全稱是 provisioning platform ,用於替代 Eclipse 3.4 及以前版本中的 Update Manager 功能,用於管理 Eclipse 插件的安裝、搜索升級等。

  P2 的UI替換了原來的 Update Manager 功能的菜單 Help > Software Updates,包含了安裝、升級站點管理等功能。

  Eclipse 中 P2 相關的目錄和文件有:

eclipse/
   configuration/
     config.ini
     org.eclipse.equinox.simpleconfigurator/ bundles.info dropins/
   features/ p2/
   plugins/
   eclipse.exe
   eclipse.ini

   bundles.info 列出了當前安裝的全部插件,這些插件在啟動時將被運行。通過P2的界面進行插件的安裝(install)或者卸載將導致此文件的修改。

   dropins 目錄受到 P2 監視,用於手動往目錄放入插件文件的方式安裝插件,這點類似於以前版本(3.4以前)的 plugins 目錄。但與以前不同,P2 並不保證放入 dropins 的目錄就一定會被安裝到系統中(注:這點值得注意),如果放入的插件無法被正確解析,或者與現有的已安裝的插件產生沖突,則插件將不會得到安裝,且不會輸出任務異常信息到日志

  為了保持向前兼容,P2 也會檢測安裝放入到 plugins 目錄的插件,但這些手工放入的插件會被特殊對待,這其中的規則是:如果手工安裝的插件,也只能手工卸載(uninstall),而無法通過 P2 卸載。推薦的方法是:盡量避免對 plugins 目錄進行手工操作,手工操作應通過 dropins 目錄進行。

  dropins 支持的目錄結構:

 eclipse/
   dropins/
     org.eclipse.core.tools_1.4.0.200710121455.jar
     org.eclipse.releng.tools_3.3.0.v20070412/
       plugin.xml
       tools.jar
       ... etc ...
   ...
 eclipse/
   dropins/
     eclipse/
       features/
       plugins/
 eclipse/
   dropins/
     emf/
       eclipse/
         features/
         plugins/
     gef/
       eclipse/
         features/
         plugins/
     ... etc ...
 eclipse/
   dropins/
     emf.link

  診斷:

  如果放入 dropins 的插件未被安裝,首先檢查  org.eclipse.equinox.ds 和 org.eclipse.equinox.p2.reconciler.dropins 是否被標識為自動啟動(auto-start)(注:不清楚這兩個指的是插件名稱還是兩個配置項,僅記錄原文檔的描述,以后有新發現了再更新)。

  如果發生了解析錯誤,默認情況下錯誤信息會被完全忽略而不會向日志或控制台輸出。如果需要將這些信息輸出到日志,可以在 .option 文件中加入以下的配置項,並且以參數 "-debug path/to/.options" 運行。

org.eclipse.equinox.p2.core/debug=true
org.eclipse.equinox.p2.core/reconciler=true

 

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM