Стартирайте Apache Felix 4.0.2 в IntelliJ IDEA 11

Според тази публикация , IDEA използва Osmorc за изпълнение на OSGi рамки. Той от своя страна използва Pax Runner за стартиране на различни реализации на рамка.

Веригата инструменти в IDEA 11 може да стартира само Apache Felix до 3.0.2, но трябва да стартирам версия 4.0.2. Възможно ли е? Съществуват ли други програми за стартиране на OSGi framework за 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 Settings-->OSGi) за някаква локална инсталация на Apache Felix 4.0.1.

Дефиниция на OSGi Framework

Можете също така да дефинирате вашата персонализирана рамка/контейнер и след това да изберете желаната OSGI рамка, която да използвате в Настройки на проекта-->OSGI, както се вижда по-долу:

Избор на OSGi рамка

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

И така, това, което трябва да направите след това, е да създадете някои OSGi аспекти. Отидете на Project "Structure-->Facets" и добавете нов OSGi аспект за всеки пакет, който искате да създадете. Ако имате включено автоматично откриване, тогава фасетите може би вече са там. Ако не, тогава ги добавете ръчно и след това ги конфигурирайте, както смятате за подходящо, както в следния пример.

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

Накрая редактирайте вашите „Конфигурации за изпълнение“ и добавете нова конфигурация за изпълнение на OSGi. Изберете рамката, която искате да използвате, и пакетите, които искате да стартирате, както и други параметри, както в следния пример:

Конфигурация за изпълнение на Intellij IDEA OSGi

person pvlissidis    schedule 14.06.2012
comment
Как стартирате OSGi пакет, след като сте конфигурирали рамката? - person frm; 15.06.2012
comment
Създавате конфигурация за изпълнение, както е показано в последната стъпка. С бутона Add-Button можете да добавите пакетите, които искате да стартирате. Те се показват в таблицата и можете да изберете началните им нива. Накрая стартирате тази конфигурация за изпълнение, като използвате бутоните Възпроизвеждане или Отстраняване на грешки до падащия прозорец за конфигурация за изпълнение в лентата с инструменти на 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