2014-11-20 5 views
0

Я нашел несколько способов получить текущий проект, но если я в мастере верстак кажется недоступной в тот момент, поэтому эта линия всегда возвращает null:Получить текущий проект в мастере (Eclipse RCP)

IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage(); 

Кроме того, этот подход работает только при открытии редактора, может ли кто-нибудь дать мне несколько указателей или поделиться простым методом для получения текущего проекта?

Я нашел несколько фрагментов кода, но я просто не могу получить эту работу, а некоторые из них работают только при открывшемся редакторе.

Спасибо.

+0

Eclipse на самом деле не имеет концепции «текущего» проекта. Как видно из приведенного ниже ответа, вы можете получить выбранный объект, но возможно, что в данный момент не может быть ничего. –

ответ

0

Я ваш мастер реализует интерфейс IWorkbenchWizard, вы будете иметь метод со следующей сигнатурой для реализации:

void init(IWorkbench workbench, IStructuredSelection selection) 

Параметр выбора будет содержать объекты IResource, которые были выбраны в текущем навигатора при запуске вашего мастера. Из IResource вы можете получить проект.

Смежные вопросы