close

 

PDE 介紹

Plugin Developemnt Environment(PDE) 提供開發 plugin 的各種功能, 因為使用 java 開發, 所以會使用 Java Development Tool(JDT)

Manifest Editor

    它可為 plugin 的兩個配置文件提供圖形化的編輯功能

    Manifest ditor  

    Manifest Editor tab 介紹

Tab Description
Overview 產生用於發佈的文檔及啟動運行時工作台
Dependencies 設定 plugin 間的依賴關係
Runtime 設定導出包和 ClassPath
Extensions 管理當前 plugin 對擴展點的擴展
Extension Points 管理當前 plugin 的擴展點
Build 產生專案時的各種設定
MANIFEST.MF 顯示 manifest.mf 的源始碼
plugin.xml 顯示 plugin.xml 的源始碼
build.properties 顯示 build.properties 的源始碼

 

 

 

 

 

 

 

 

 

 

 

 

 

Manifest editor 的頁面上部都有一些快捷鍵, 由左至右是 Run as, Debug, Export 和 Help

    Quick button  

 

下面介紹 PDE 提供的 View
1. Plug-ins view
所有 plugin 的列表, 包含目前工作區內正在開發的 plugin. 打開 plugin 節點可顯示包含的資源, 但無法顯示 jar 提供的 plugin
在節點上按右鍵選擇「Open Dependencies」可以看到 plugin 間的依賴關係. Popupmenu 也可把選中的 plugin 當作一個 Project 引入目前工作區內

Plugin view  

2. Plug-in Dependencies view
顯示 plugin 間的依賴關係. 可分別表示目前 plugin 依賴的 plugin 和依賴此 plugin 的 plugin

Plugin dependencies view  

3. Plug-in Registry view
目前工作台加載的所有 plugin list, 打開節點, 顯示擴展和擴展點, dependencies 等等

 Plugin registry view  

4. Error Log view
顯示當前工作台內發生的錯誤, 雙擊錯誤可以導向發生錯誤的地方

Error log view  

5. Plug-in Selection Spy
快捷鍵 Alt+Shift+F1
Eclipse 3.4 新增功能, 能顯示當前焦點所在的 Editor, View, 對話框等內部訊息
將已有的 plugin 作為參考, 進行開發, 最適合使用這個功能

Plugin selection spy  


plugin.xml code 


SampleAction.java


 Activator.java

 

Method 介紹

Method Description
getDefault 取得 plugin 的實例, 使用靜態方法提供, 因為它是單例的
start 開始時的處理
stop 停止時的處理
getLog log 輸出時取得 ILog 的方法
getImageRegistry 取得管理 plugin 內圖像的 ImageRegistry
getPerferenceStore 取得保存 plugin 設定的 IPerferenceStore
getDialogSettings 取得保存對話框設定的 IDialogSetting
getWorkbench 取得 IWorkbench 實例

 

MANIFEST.MF 和 plugin.xml

plugin 包含 manifest.mf 和 plugin.xml 兩個配置文件
manifest.mf 是 OSGi 的 handler 配置文件, 記錄 plugin id, name, 作者和其他 plugin 的依賴關係等等
plugin.xml 記錄 plugin 的 Extension 和擴展點的定義等資訊

Eclipse 3.1 之前還沒採用 OSGi 技術, plugin 的訊息記錄在 plugin.xml, 所以應用在 Eclipse 3.1 之前的版本和之後的版本要注意 OSGi 的配置文件規範

 

 

 

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 Nola 的頭像
    Nola

    學習就是生活

    Nola 發表在 痞客邦 留言(0) 人氣()