2012-03-29 2 views
1

Я пишу плагин eclipse, который вносит вклад в стандартное рабочее место, а одно действие создает новый файл в текущем проекте. Моя проблема заключается в том, что проводник не обновляется, когда файл создается в действии. До сих пор я пытался:Eclipse RCP - обновить PackageExplorerPart программно

((PackageExplorerPart)part).refresh(treeSelection); //where the selection is the root project 
((PackageExplorerPart)part).getTreeViewer().refresh; 

Оба они называются сразу после создания ресурса. Что мне не хватает? Может быть, ресурс еще не слит с моделью исследователя? Обновление вручную показывает файл ...

ответ

1

Это зависит от того, как вы создаете новый файл. Если он создается непосредственно в файловой системе, то есть без использования API-интерфейсов Eclipse IResource, вы должны обновить соответствующий IR-источник. Например, как описано в refreshLocal(). Этого должно быть достаточно.

+0

Спасибо, но мне пришлось сначала найти файл с помощью 'ResourcesPlugin.getWorkspace(). GetRoot(). GetFile (...)', потому что созданный метод не вернул его. – zeller