2010-08-25 29 views
7

如何創建RCP應用程序,該應用程序與所有菜單,視圖,對話框完全相同?如何創建一個Eclipse RCP應用程序重新使用一些「Eclipse IDE插件」?

下面是一個例子:http://richclientplatform.blogspot.com/2007/12/oil-and-gas-industry-using-eclipse.html

我跟着拉爾斯·沃格爾的教程創建一個簡單的RCP應用程序:http://www.vogella.de/articles/EclipseRCP/article.html

...接下來的步驟是什麼?

+0

在第一次嘗試時,我試圖將'org.eclipse.ui.ide'作爲依賴添加到我的產品配置中,因爲我需要的所有擴展似乎都在這個項目中。 – Max 2010-08-25 01:46:39

+0

你確定你想創建一個新的應用程序嗎? 只需開發一個插件並將其部署到Eclipse中可能會更容易。 – pbanfi 2010-08-25 08:53:46

+0

同意cerealk,當它已經在那裏時,爲什麼要重新創建Eclipse IDE?您可以通過更新站點提供您的插件,用戶可以將它們安裝到他們現有的Eclipse實例中。或者你只是想重新品牌化Eclipse IDE(例如更改啓動畫面,啓動器圖標等)? – 2010-08-25 15:44:07

回答

5

IDE包爲您提供了允許您使用工作空間隱喻的類和擴展點,但它不包含添加您在Eclipse IDE中看到的所有功能的擴展。

由於RCP應用程序應用程序中的每個軟件包都會添加菜單,視圖和對話框,因此使應用程序看起來像IDE的方式是包含IDE附帶的所有軟件包。

通常你會從一個非常簡單的應用程序開始,比如Vogel(我發現那些教程很好)展示的教程。然後,當你找到你想要添加的東西時,研究哪個包提供了它,然後添加該包。當你這樣做時,你的應用程序將會在功能上增長,而不會增加用戶不需要的功能。

編輯:讓我引導你創建一個簡單的RCP應用程序。

  • 通過轉到文件創建一個新的項目 - >新建 - >項目
  • 選擇Plug-in項目
  • 設置項目名稱com.mydomain.rcp
  • 單擊下一步
  • 下富客戶端應用選擇是
  • 單擊下一步
  • 選擇RCP郵件模板
  • 點擊完成

您現在擁有一個具有某些功能的RCP應用程序。下一步,我們將運行它:

  • 選擇運行 - >運行配置...
  • 選擇左邊
  • 右鍵單擊Eclipse的應用程序並選擇New
  • 查找程序運行/運行產品。選擇com.mydomain.rcp.product
  • 單擊插件選項卡上
  • 查找啓動在低於僅
  • 點擊取消全部選取右側
  • 在你列出的頂部,然後選擇插件的插件選擇com.mydomain。RCP
  • 在底部取消選擇上運行
  • 添加新的工作空間插件這個啓動配置自動
  • 在添加所需的插件
  • 在底部點擊右鍵

的應用程序應運行示例郵件應用程序。繼續並關閉它。現在讓我們添加一個插件,這樣我們就可以讓搜索菜單在Eclipse IDE中顯示出來。

  • 在你com.mydomain.rcp項目打開你的plugin.xml文件
  • 單擊依存關係選項卡
  • 在需要的插件上單擊Add ...
  • 鍵入org.eclipse .search
  • 選擇org.eclipse.search(不是源之一)
  • 單擊確定
  • 保存plugin.xml文件
  • 從菜單中選擇運行 - >運行配置...
  • 單擊插件選項卡
  • 上添加所需的插件
  • 在底部點擊右鍵點擊運行

您現在應該可以像IDE那樣使用「文件搜索」選項看到「搜索」菜單。您不會看到Java搜索或插件搜索,因爲我們沒有添加包含這些添加的適當的JDT或PDE插件。希望這給你一個想法如何添加新的插件。

+1

我完全理解你所說的,那是一個非常好的解釋。所以,我現在的問題是:1.在我的RCP應用程序中添加套件(插件)的步驟是什麼? 2.如何啓動這個附加包(插件)來獲取它提供的功能? – Max 2010-08-25 18:31:56

+1

查看答案在編輯答案 – rancidfishbreath 2010-08-25 22:42:23

+0

這是一個非常確切的答案,它工作正常,非常感謝。還有1個問題:我在這個論壇(http://www.eclipsezone.com/eclipse/forums/t107481.html)上看過,如果我在'org.eclipse.ui.ide'中包含一個依賴關係,我會有行爲我期望(包括所有的嚮導,preferencePages,菜單...)然而,在添加了這個依賴關係之後(正如我與你一起學習的那樣),它仍然不起作用。 – Max 2010-08-25 23:28:17

相關問題