Внешние занятия / баночка в OSGi - PullRequest
1 голос
/ 26 июля 2011

Мое приложение поддерживает работу на многих dbms и требует, чтобы пользователь сконфигурировал настройку соединения dbms, а также предоставил jar-файл jdbc. Теперь приложение должно быть упаковано как пакет OSGi. Будет еще одна основная фляга, которая запускает OSGi-сервер и запускает приложение как пакет. Подскажите, пожалуйста, как мне упаковать приложение в пакет и позволить пользователю предоставить jar-файл jdbc.

Требуется ли что-то наподобие jar основного модуля запуска, указывающего классы драйвера JDBC в качестве свойства FRAMEWORK_SYSTEMPACKAGES?

Спасибо заранее, Аман

1 Ответ

2 голосов
/ 26 июля 2011

Есть два способа сделать это:

1) Добавление driver.jar в путь к классу основного модуля запуска и, как вы говорите, предоставление его пакетов через структуру путем указания этого свойства (или фактически вы можете использовать свойство FRAMEWORK_SYSTEMPACKAGES_EXTRA, чтобы просто указать дополнительные пакеты вместо указав все из них).

2) Ручная упаковка driver.jar в виде пакета или динамическое выполнение во время выполнения. Например, вы можете попробовать обернуть пакеты, которые копируются в определенную папку (аналогично тому, что делает Apache Felix File Install), используя Pax URL или другой инструмент, который может создать пакет из обычного jar-файла для вас (см. http://team.ops4j.org/wiki/display/paxurl/Pax+URL).

...