Можно ли использовать самообновление в приложении RCP, основанном на плагинах? - PullRequest
0 голосов
/ 19 октября 2011

Вот в чем вопрос. У меня есть приложение, которое запускается как на основе плагинов (начинается в версии pde 3.1) сейчас я обновляю это приложение.

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

Кроме того, если я изменил свою конфигурацию «продукта» с плагинов на функции, процесс экспорта не сработал и выдает ошибку.

Насколько я вижу, когда вы хотите этот сценарий, вы должны создать «Проект плагина RCP» и «Проект возможностей», где каждый зависит от другого. «Проект плагина RCP» должен основываться на функциях.

А затем «Художественный проект» создает «Обновление проекта сайта». Но когда «Проект плагина RCP» основан на «плагинах», все циклы разбиваются, и я не могу добавить зависимость к «функциональному проекту».

Есть ли способ использовать этот «сценарий самообновления» с продуктом на основе плагинов? Или я могу конвертировать в P2?

С наилучшими пожеланиями

1 Ответ

0 голосов
/ 19 октября 2011

В общем, можно обеспечить функциональность обновления в приложениях RCP. Сегодня самый простой способ - использовать p2 для этого.

По этой причине вам потребуется сайт обновлений и продукт RCP с поддержкой p2.

О функциях, плагинах и зависимостях: функция - это в основном контейнер для плагинов; Плагины в основном вносят код для выполнения. Функция содержит плагины и автоматически зависит от всех плагинов, от которых зависят содержащиеся плагины, поэтому нет необходимости добавлять содержащиеся проекты как зависимости к функции. С другой стороны, проект подключаемого модуля должен и не должен знать о функциях, которые их содержат, - которые могут привести к циклам зависимостей, которыми невозможно управлять.

Об проектах обновления сайта: не используйте их - это устаревший тип проекта, использовавшийся старым менеджером обновлений - для p2 лучше просто экспортировать функции. За подробностями я беззастенчиво предлагаю свой собственный пост в блоге с прошлого года.

Затем вы можете добавить необходимые элементы p2 в ваше приложение - в основном вы должны убедиться, что плагины p2 присутствуют и выполняются во время выполнения. Вы можете повторно использовать графический интерфейс обновления p2 из среды IDE или использовать свой собственный. Подробности об этой функциональности можно найти в Eclipse wiki и в Andrew Niefers блоге (также по ссылке со страницы вики).

Обновление : и новый соответствующий пост на vogella.de

...