所以,我正在开发一个Eclipse插件,它包含一个基于源代码分析的自定义视图。大多数时候,它的效果很好。但是,如果我在打开该视图的情况下退出Eclipse,当我重新打开它时,它会遇到错误,IWorkbenchWindow.getActivePage()
或IWorkbenchPage.getEditorReferences()
返回null。这种不一致似乎是因为视图在Eclipse退出时具有焦点,并且是Eclipse在启动时尝试重建的第一件事。焦点在非窗口shell上(我不完全理解这一点,但这就是this所说的。是否有一种解决方法,以便我可以确保Eclipse在我的自定义插件之前完全加载其IWorkbenchWindow
,而不管Eclipse关闭时焦点是什么?
由于
答案 0 :(得分:2)
您可以考虑使用该网站:getSite().getPage()
...
答案 1 :(得分:1)
Tonny Madsen在评论中指出,在一个视图中,我可以从getSite().getPage()
访问活动页面,从而解决了这些问题。