Какие настройки и рабочие процессы IDE используются для разработки OSGi? - PullRequest
5 голосов
/ 16 марта 2010

Я сделал несколько простых тестовых проектов OSGi в Eclipse RCP. Мой типичный рабочий процесс всегда будет:

  • Создайте 3 разных проекта: APIproject, Clientproject и Serverproject
  • Отредактируйте файл MANIFEST.MF APIproject для экспорта пакета API
  • Отредактируйте файл MANIFEST.MF Clientproject и Serverproject, чтобы добавить требуемый пакет API
  • Выберите «Выполнить как ...»> «Плагин Framework»
  • Консоль OSGi запускается в Eclipse, и кажется, что все работает

Я также пытался подключить вещи с помощью декларативных служб, которые тоже хорошо работали, как это.

Недавно я хотел попробовать iPOJO. Проблема в том, что у меня такое чувство, что я неправильно занимаюсь разработкой OSGi.
Может ли быть так, что вместо этого я должен сделать 1 проект и заставить его работать так, как будто бы OSGi не участвует? А затем после этого просто экспортируйте каждый пакет в его собственный пакет с помощью (например) инструмента BNDL? Разве разработка должна выполняться в обычном Eclipse (Java, а не RCP) или в любой другой Java IDE?

Так вот почему у меня есть следующие вопросы:

  • Какие настройки IDE обычно используются для разработки OSGi с iPOJO?
  • А каков обычный рабочий процесс, который будет использоваться при разработке проектов OSGi (возможно, с iPOJO)?

1 Ответ

5 голосов
/ 19 марта 2010

Обычно, когда я разрабатываю пакеты OSGi (не пакеты Eclipse RCP), я использую следующие инструменты:

  • Maven 2 в качестве системы сборки.
  • Apache Felix maven-bundle-plugin для автоматического создания файла MANIFEST.MF.
  • Pax Exam для создания интеграционных тестов, которые запускаются внутри контейнера OSGi.
  • Pax Runner для выполнения моих пакетов в любой среде OSGi (равноденствие, Феликс и т. Д.).
  • IntelliJ (или иногда Eclipse) как стандартная среда разработки без каких-либо дополнительных возможностей OSGi.

Я еще не разработал никаких пакетов Eclipse RPC, но есть новый инструмент для интеграции сборки Maven 6 Eclipse RPC под названием Tycho (http://tycho.sonatype.org).

...