Запустите Apache Felix 4.0.2 в IntelliJ IDEA 11.

Согласно этому post , IDEA использует Osmorc для запуска фреймворков OSGi. Он, в свою очередь, использует Pax Runner для запуска различных реализаций фреймворка.

Цепочка инструментов в IDEA 11 может запускать Apache Felix только до версии 3.0.2, но мне нужно запустить версию 4.0.2. Является ли это возможным? Существуют ли другие средства запуска платформы OSGi для IDEA?


person frm    schedule 13.06.2012    source источник
comment
Меня никогда не устраивал osmorc в IDEA 10, поэтому я просто запустил org.apache.karaf.main.Bootstrap.main() как обычное Java-приложение. Этот подход работает достаточно хорошо, за исключением того, что вы не можете полагаться на кнопку компиляции IDE.   -  person Chris Dolan    schedule 14.06.2012


Ответы (1)


Вы можете настроить платформы OSGI, которые использует Osmorc, в настройках проекта plugin+. Я использую IntelliJ IDEA 11.1.2 и Osmorc 1.4.2.

Вот снимок экрана, на котором я настраиваю контейнер OSGI (в настройках IDE -> OSGi) для некоторой локальной установки Apache Felix 4.0.1.

Определение OSGi Framework

Вы также можете определить свой пользовательский фреймворк/контейнер, а затем выбрать желаемый фреймворк OSGI для использования в настройках проекта -> OSGI, как показано ниже:

Выбор платформы OSGi

Чтобы создать конфигурации Run, вам сначала нужно создать несколько фасетов OSGi. Надеюсь, вы также используете maven и плагин maven-bundle-plugin, который значительно уменьшит объем необходимых настроек (поскольку OSmorc автоматически синхронизируется с вашим pom.xml), но даже если вы этого не сделаете, вы можете вручную отредактировать информация для создания пакетов.

Итак, что вам нужно сделать дальше, это создать несколько фасетов OSGi. Перейдите в проект «Структура -> Фасеты» и добавьте новый фасет OSGi для каждого пакета, который вы хотите создать. Если у вас включено автоматическое определение, возможно, грани уже есть. Если нет, добавьте их вручную, а затем настройте по своему усмотрению, как в следующем примере.

Конфигурация фасета Intellij IDEA OSGi

Наконец, отредактируйте «Конфигурации запуска» и добавьте новую конфигурацию запуска OSGi. Выберите платформу, которую вы хотите использовать, и пакеты, которые вы хотите запустить, а также другие параметры, как в следующем примере:

Конфигурация запуска Intellij IDEA OSGi

person pvlissidis    schedule 14.06.2012
comment
Как запустить пакет OSGi после настройки фреймворка? - person frm; 15.06.2012
comment
Вы создаете конфигурацию запуска, как показано на последнем шаге. С помощью кнопки «Добавить» вы можете добавить пакеты, которые хотите запустить. Они отображаются в таблице, и вы можете выбрать их начальные уровни. Наконец, вы запускаете эту конфигурацию запуска, используя кнопки «Воспроизвести» или «Отладка» рядом с всплывающим меню конфигурации запуска на панели инструментов IntelliJ. - person Jan Thomä; 16.06.2012
comment
Я знаю, что это старый ответ, но следуя инструкциям, когда я запускаю IntelliJ, выдает запрошенную консоль ошибки, но пакеты оболочки не могут быть найдены - person vallentin; 20.03.2017
comment
@Vallentin см. youtrack.jetbrains.com/v2/issue/IDEA-183907 - person CrazyCoder; 18.12.2017
comment
Обновление IntelliJ до последней версии решило проблему. - person Talha Junaid; 25.02.2018