2016-04-27 3 views
0

В моем плагине eclipse мне нужно получить выделение в проводнике пакетов.
я узнал, что это работает так:Eclipse selection is null

IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow(); 
ISelectionService service = window.getSelectionService(); 
IStructuredSelection structured = (IStructuredSelection) service.getSelection("org.eclipse.jdt.ui.PackageExplorer"); 
Object selection = structured.getFirstElement(); 

Это прекрасно работает в 99% случаев, но я недавно наткнулся на случай, когда getSelection("org.eclipse.jdt.ui.PackageExplorer"); возвращает нуль, хотя я могу ясно видеть, что у меня есть кое-что, выбранный в пакетный исследователь ...

Как это может быть?

+0

Вы уверены, что это просмотр обозревателя пакетов, а не Project Explorer, который может выглядеть очень похожим? –

+0

Ehm ... Это может быть что-то ... Какие-то варианты затмения наследуют Project Explorer в том же положении, что и Explorer? – Raven

+0

Я сам это выяснил: да, возможно и да, на самом деле это проблема ... Если вы опубликуете свой комментарий в качестве ответа, я подберу его как правильное решение – Raven

ответ

0

Убедитесь, что представление не является проводником проекта, а не проводником пакетов. Они могут выглядеть очень похожими и обе по умолчанию отображаются в одном и том же месте.