2010-03-16 61 views
4

我在Eclipse RCP中做了很多簡單的OSGi測試項目。我的典型的工作流程將永遠是:什麼IDE設置和工作流程用於OSGi開發?

  • 把3個不同的項目:APIproject,Clientproject和Serverproject
  • 編輯APIproject的MANIFEST.MF到
  • 編輯MANIFEST.MF文件導出Clientproject的API包, Serverproject添加所需的API包
  • 選擇「運行方式...」>「插件框架」
  • OSGi控制檯啓動eclipse中,一切似乎工作

我也嘗試通過使用聲明式服務來進行連接,這也很適合。

現在最近我想嘗試iPOJO。問題是,我感覺我一直在做錯我的OSGi開發。
難道是我應該改爲讓1個項目讓它工作,就像沒有OSGi參與一樣。然後,通過(例如)BNDL工具將每個包導出到自己的包中?應該在正常的Ec​​lipse(java,而不是RCP)或其他java IDE中進行開發嗎?

所以這就是爲什麼我有這樣的問題:

  • 什麼IDE設置通常用於開發的OSGi與iPOJO?
  • 什麼是開發OSGi項目(可能與iPOJO)時使用的正常工作流程?

回答

3

通常當我開發OSGi包(沒有Eclipse RCP的包)我使用以下工具:

  • 的Maven 2作爲構建系統。
  • Apache Felix maven-bundle-plugin自動生成MANIFEST.MF。
  • Pax考試創建在OSGi容器內運行的集成測試。
  • Pax Runner在任何OSGi框架(equinox,felix等)中執行我的bundle。
  • IntelliJ(或者有時候是Eclipse)作爲標準的IDE,沒有任何OSGi額外功能。

我還沒有開發出任何Eclipse RPC包,但有對Maven 6 Eclipse的RPC構建集成一個新的工具,稱爲第谷(http://tycho.sonatype.org)。