2012-03-27 48 views
0

我需要使用org.osgi.framework.system.packages.extra屬性來在運行時添加服務接口。這些接口由OSGi Bundles實現。我無法編譯這些Bundle,因爲PDE找不到所需的接口。有沒有辦法告訴PDE在哪裏尋找這些接口?PDE + org.osgi.framework.system.packages.extra

編輯: 嗯,我想我必須更加精確。我試圖將OSGi集成到現有的Java應用程序中。爲了使Java應用程序能夠與OSGi包進行通信,我將使用OSGi服務。 Java應用程序定義OSGi服務的接口。這些服務在一個任意的OSGi包中實現。我在運行時通過org.osgi.framework.system.packages.extra屬性將接口定義提供給OSGi包。所以我沒有運行時問題。我有一個編譯時問題,因爲在編譯時,PDE似乎沒有org.osgi.framework.system.packages.extra選項用於依賴關係解析。操作目標平臺似乎沒有幫助,因爲我的接口是在Java項目中定義的,而不是在Bundle中定義的。

回答

0

在菜單窗口 - >首選項 - >插件開發 - >目標平臺下,您可以編譯捆綁軟件的目標定義。包含您的接口的捆綁包需要處於活動目標定義中。默認情況下,它將指向您的Eclipse安裝文件夾並從插件文件夾中獲取捆綁包,但是如果您想要針對特定​​捆綁包進行構建,則可以創建自己的目標定義。

+0

看到編輯....... – 2012-03-27 13:40:16

+0

啊,我明白了。你不能將它添加到項目屬性 - > Java Build Path-> Projects選項卡嗎? – 2012-03-27 14:20:50

+0

是的,那是我目前的解決方案。但它不是一個好的解決方案,因爲當點擊清單編輯器中的「更新類路徑設置」時,我將丟失所有配置。所以我希望有其他配置的可能性。 – 2012-03-28 06:44:52