2012-04-17 3 views
0

그래서 저는 소스 코드 분석을 기반으로 한 사용자 정의보기가 포함 된 Eclipse 플러그인을 작성하고 있습니다. 대다수의 시간은 훌륭하게 작동합니다. 그러나 해당 뷰를 열고 Eclipse를 종료하면 다시 열면 IWorkbenchWindow.getActivePage() 또는 IWorkbenchPage.getEditorReferences() null이 반환되는 오류가 발생합니다. 이 불일치는 Eclipse가 종료 될 때보기에 초점을두고 Eclipse가 시작시 재구성하려고 시도하는 첫 번째 작업이기 때문에 나타나는 것 같습니다. 포커스가 아닌 창 셸 (나는 완전히 이해하지 않지만이게 뭔지 this). 이클립스가 닫힐 때 초점이 무엇인지에 관계없이 이클립스가 자신의 커스텀 플러그인 전에 IWorkbenchWindow을 완전히로드 할 수 있도록하는 임시 해결책이 있습니까?프로그래밍 방식으로 관점의로드 순서에 영향을 미침

감사

+0

는 이상한 즉 당신이 당신의 생성자 또는' –

+0

그것은 createPartControls() – Tas

+0

을 통해 간접적으로 호출되는 createPartControls()'에서 위의 라인을 사용하십니까 그때까지 Workbench가 완전히 설정되었지만 활성 페이지가 아직 설정되었을 수 있습니다. 대신 사이트 사용을 고려할 수 있습니다 :'getSite(). getPage() ... ' –

답변

2

당신은 대신 사이트를 사용하는 것을 고려 할 수 있습니다 getSite().getPage() ...

1

는 토니와 매드슨이 문제를 해결 뷰 내에서, 나는 getSite().getPage()에서 활성 페이지에 액세스 할 수 있습니다, 의견에서 지적했다.

관련 문제