Плагин Eclipse Auto Start в продукте - PullRequest
0 голосов
/ 17 июля 2011

Я пытаюсь создать плагин, который загружает различные ресурсы, взятые из загруженного проекта. Я пытаюсь зарегистрироваться в ResourceChangeListener рабочей области на ранней стадии, чтобы получить уведомление о ресурсах, которые добавляются в рабочую область. Раннее начало org.eclipse.ui слишком поздно (если проекты уже загружены в рабочую область). Как или какую точку расширения я могу использовать для регистрации моего слушателя в то время, когда я могу прослушивать изменения ресурса рабочей области?

Спасибо, Клинт

Ответы [ 3 ]

1 голос
/ 07 октября 2011

Если вы хотите знать ресурсы (например, проекты), которые открыты в рабочей области, вы можете просто получить IWorkspace и посмотреть на содержащийся в нем проект.

IWorkspace workspace = ResourcesPlugin.getWorkspace();
IWorkspaceRoot rootResource = workspace.getRoot();

Тогда вы сможете пройти через эту древовидную структуру, чтобы узнать обо всех ресурсах. Надеюсь, это поможет.

Вот несколько ресурсов:

1 голос
/ 27 июля 2011

Вы должны исследовать наличие участника сохранения рабочей области для обработки ситуаций, прежде чем ваш плагин будет запущен нормально.Немногие плагины достаточно важны, чтобы гарантировать всегда запуск на ранней стадии без участия пользователя.

http://help.eclipse.org/indigo/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Fguide%2FresAdv_saving.htm

0 голосов
/ 13 апреля 2017

Вы можете попробовать использовать точку расширения "org.eclipse.ui.services" следующим образом:

<extension point="org.eclipse.ui.services">
  <sourceProvider provider="com.plugin.YourClass"></sourceProvider>
</extension>

YourClass - это класс, расширяющий org.eclipse.ui.AbstractSourceProvider

Тогда ваш плагин запустится очень рано!

...