Плагин продукта VS Особенность продукта - PullRequest
5 голосов
/ 29 июня 2010

В контексте приложения RCP мне интересно, должен ли я основывать свой продукт на плагинах или на функциях.

Основное отличие, которое я вижу на данный момент, заключается в содержимом экспортируемого приложения.

Использование плагинов в качестве базы продукта приводит к экспорту (с GUI или безголовой сборкой, это то же самое) со ВСЕМИ требуемыми плагинами (вычисляется, я думаю, через манифест плагинов)

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

Каков ваш опыт по этому вопросу?

РЕДАКТИРОВАТЬ В соответствии с комментариями Vonc, я создал свою собственную функцию, включающую только плагины, которые мне нужны из других функций. Это решение работает, но я должен вручную добавить все необходимые плагины для моего продукта в этой функции. Сегодня для этого единственное решение, которое я нашел, состоит в том, чтобы использовать вкладку плагинов конфигурации запуска с кнопкой «Вычислить требуемые плагины» и вручную отчитываться обо всех выбранных плагинах. Это действительно скучно :-( Существуют ли другие решения?

Спасибо

1 Ответ

9 голосов
/ 06 июля 2010

После многих исследований вот "ясный" (я надеюсь) статус по этому вопросу.

Плагин Продукты:

  • Нет проблем при сборке (Gui или без головы) => все необходимые плагины (такие же, как и требуемые плагины, вычисленные в диалоговом окне конфигурации запуска при отладке приложения). Плагины присутствуют
  • Оптимизирована площадь диска приложения RCP !!Нет бесполезных плагинов
  • Функции не экспортируются: в результате вкладка списка возможностей диалогового окна about пуста !!!
  • Кажется, что продукты плагинов не рекомендуются для RCP с самообновлением (Iеще не проверял это)

Feature Products:

  • При экспорте (без заголовка) в списке присутствуют только присутствующие плагины и функциив .product файле
  • Необходимость создания «зависимостей» функций, включающих все необходимые плагины ИЛИ зависит от всех функций, содержащих необходимые плагины => принести много бесполезных плагинов
  • Функции, перечисленные в диалоговом окне about

В моей личной ситуации я решил использовать функциональный продукт, а затем «вручную» создать функцию, включающую все 90 плагинов, необходимых для моего RCP.

Поскольку я ленивый и ненавижу повторяющиеся задачи, я написал простой основной Java-файл, анализирующий файл конфигурации запуска (.launch, расположенный в папке метаданных рабочей области) и генерирующий из шаблона функцию со всеми необходимыми зависимостями.

Надеюсь, это поможет другим, и если вам нужен мой простой создатель зависимостей Java-функций, просто спросите его.

Manu

...