2015-08-14 35 views
0

我要通過這個OSGi的教程(使用Eclipse,安裝了插件PDE):這個OSGi導入包爲什麼不起作用?

http://www.vogella.com/tutorials/OSGi/article.html

直到任務10,一切運行良好。但現在我有一個問題:

「Import-Package:org.osgi.framework; version =」1.3.0「(可能是因爲生成的Activator類自動生成的)顯示以下錯誤: 「無束輸出包‘org.osgi.framework’」

在Activator類我也得到解決的錯誤像BundleActivator的和BundleContext的班。我通過使用外部JAR固定這個問題(org.eclipse.osgi ),但我敢肯定,這不是正確的方法,因爲你應該聲明任何依賴關係在清單文件。

但我該如何添加org.eclipse.osgi jar進口包在清單中的行是足夠的?

我的整個清單文件:

Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Internal Bundle-SymbolicName: com.osgi.beispiel.one.bundle.internal Bundle-Version: 1.0.0.qualifier Bundle-Activator: com.osgi.beispiel.one.bundle.Activator Bundle-Vendor: OSGI Bundle-RequiredExecutionEnvironment: JavaSE-1.8 Import-Package: org.osgi.framework;version="1.3.0" Bundle-ActivationPolicy: lazy

回答

0

添加org.eclipse.osgi到「需要的插件」的MANIFEST.MF編輯依存關係選項卡(將一個「需要束」行添加到第MANIFEST.MF)。

+0

感謝您的快速回答。我通過第三次重新安裝它而得到了它的工作,並且出於某種原因,這次它在創建項目時自動選擇了org.eclipse.core.runtime插件,其中還包括您提到的插件。 –

0

在我的工作空間中沒有可用的bundle導出包'org.osgi.framework'「的原因是$ {eclipse_home}無效。 「窗口 - 首選項 - 目標平臺 - 運行平臺」複選框標有紅色圖標。我按照「編輯...」,選擇「$ {eclipse_home}」,「編輯...」,並選中「此安裝使用默認配置區域」。離開對話框後,點擊「完成」。 「確定」,問題解決了。