Eclipse RCP: Целевая платформа - Eclipse vs. Equinox? - PullRequest
7 голосов
/ 12 сентября 2010

Я только начинаю с OSGi и Eclipse RCP. Может ли кто-нибудь объяснить мне разницу между «Eclipse» и «Equinox» в качестве целевой платформы при создании нового проекта плагина eclipse?
Я до сих пор знаю, что Equinox - это реализация OSGi в Eclipse.
В некоторых статьях я читал, что eclipse rcp также основан на Equinox. Так в чем же разница между целевой платформой, которую вы должны выбрать в новом проекте Eclipse Plugin?

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

Ответы [ 2 ]

7 голосов
/ 03 февраля 2011

Выбор «фреймворка OSGi»: Это просто создает новый пакет без необходимых подключаемых модулей или импортированных пакетов (если вы не выберете активатор, в этом случае пакет org.osgi.framework будет отображаться в импортированных пакетах).

Выбор версии Eclipse: После нажатия кнопки «Далее» мастер дает вам флажок «Этот плагин будет вносить вклад в пользовательский интерфейс» и позволяет вам создать клиентское приложение с расширенными возможностями

Без каких-либо других опций плагин Eclipse будет иметь org.eclipse.core.runtime в качестве необходимого плагина. Если вы говорите, что плагин будет вносить вклад в пользовательский интерфейс, тогда org.eclipse.ui будет добавлен в необходимые плагины. Сказав, что вы хотите создать приложение с расширенными возможностями, шаблоны на последнем экране отличаются, и вы вынуждены выбрать один из них для завершения. Также ваш Активатор расширит Плагин, если вы не выбрали опцию UI, и AbstractUIPlugin, если вы выбрали опцию UI.

В пакетах, которые создаются любым способом, нет ничего особенного, мастер просто устанавливает для вас требуемые плагины / импортируемые пакеты по умолчанию. Конечно, как указал VonC, некоторые из зависимостей, настроенных по маршруту Eclipse, могут быть несовместимы с другими реализациями OSGi.

4 голосов
/ 12 сентября 2010

Речь идет об окружающей среде, в которой будет работать модуль, который вы будете создавать: см.

Eclipse Equinox - это среда выполнения, на которой основаны приложения Eclipse IDE и Eclipse RCP .
В Eclipse самая маленькая единица модульности - это плагин. Термины «плагин» и «комплект» (почти) взаимозаменяемы. Плагин Eclipse также является пакетом OSGi и наоборот.

alt text

  • комплект для OSGi, способный работать в среде Equinox (внутри или вне Eclipse)
  • плагин для Eclipse, запускаемый в приложении на основе Eclipse.

См. Краткое руководство по Equinox :

Реализация платформы Equinox OSGi лежит в основе платформ Eclipse RCP и IDE, но на самом деле это полностью автономная реализация OSGi.

Вы можете запустить пакет независимо от Eclipse:

java -jar org.eclipse.osgi_3.2.0.jar -console

После запуска вы увидите приглашение osgi>. Это консоль OSGi, ожидающая ввода команд

...