2012-12-21 102 views
0

我已經在hello世界模板的eclipse中創建了插件項目,修改了sysout。現在我正在嘗試將該項目作爲OSGI框架運行。但我得到以下錯誤:eclipse:運行OSGI插件作爲OSGI框架

Root exception: 
java.lang.IllegalStateException: Workbench has not been created yet. 
    at org.eclipse.ui.PlatformUI.getWorkbench(PlatformUI.java:92) 

任何想法可能是什麼原因?目前我正在使用Eclipse Juno 32位版本。

+0

您是如何運行項目的? – cowls

+0

作爲「啓動Eclipse應用程序」運行插件還是您定義了自己的產品? – Timo

+0

右擊捆綁項目 - >運行 - > OSGI框架。它具有Equinox作爲默認容器。請注意,我正在使用Eclipse Juno – Chetan

回答

0

問題是,在其他代碼嘗試創建或訪問工作臺資源之前,這行代碼未被調用。不知道你修改了什麼,但是這行必須首先在你的Application類中執行。也許在這一行添加一個斷點:然後是非法狀態的斷點,並查看debeugger第一次停止的位置。如果發生異常,那麼在調用createAndRunWorkbench之後需要執行代碼。在此行之前嘗試在Application類中創建諸如jface嚮導之類的東西之前,我已經看到了此錯誤。

PlatformUI.createAndRunWorkbench(display, new ApplicationWorkbenchAdvisor());