Есть ли способ развернуть пакетные пакеты в Apache Felix?

Мы смотрим на реструктуризацию нашего веб-приложения и хотим перейти на более модульное решение, OSGi, кажется, отвечает многим нашим потребностям.

Я натолкнулся на проект Apache Felix и взял его на себя. Это выглядит солидно, но я нахожу цикл разработки немного медленным, так как для того, чтобы изменения в коде были эффективными, требуется сборка пакетов maven.

Вместо этого я хотел бы иметь возможность перезагрузить пакет, как только классы были скомпилированы Eclipse, без каких-либо дополнительных сборок / упаковок. Подобно тому, как Tomcat и другие контейнеры сервлетов поддерживают развертывание "взорванных" военных файлов.

Это возможно сделать с Felix или любым другим контейнером OSGi?

2 ответа

Решение

В оболочке Gogo вы можете сделать:

install reference:file:/path/to/exploded/directory

Это установит разобранный комплект. Формат развернутого каталога должен быть точным форматом файла JAR пакета.

Apache Felix FileInstall поддерживает разнесенные пакеты из коробки. Просто установите его и поместите каталог с вашим пакетом в load каталог (или настройте FileInstall для поиска в другом месте).

Не совсем отвечая на ваш вопрос, но если у вас есть проблемы с циклом сборки, вы должны взглянуть на bndtools, который является плагином для Eclipse, который автоматически собирает и развертывает ваши пакеты в работающей среде при изменении кода.

Другие вопросы по тегам