Вопрос

Я некоторое время изучал OSGi, и мне интересно, как лучше всего работать с "устаревшими" библиотеками (которые выпускаются в виде простых JAR, а не в виде пакетов OSGi).

Как вы думаете, как лучше всего с этим справиться?Изменение их файла манифеста и добавление минимальной информации, относящейся к конкретному пакету, а затем их переупаковка - это то, что я делаю в данный момент, но мне это кажется каким-то неправильным.Должен ли я просто использовать ручное управление зависимостями для этих JAR (я делаю это для тех библиотек, которые с высокой вероятностью будут использоваться только в определенной части моего приложения)?

Насколько они доступны, я использую пакеты для Eclipse (поскольку я использую Equinox в качестве платформы OSGi, это хорошо работает для тех библиотек, которые доступны в виде пакетов).

Существуют ли какие-либо пакеты-репозитории, помимо пакетов Eclipse, о которых я должен знать?

Это было полезно?

Решение

Spring с размахом продвигает OSGi, используя Equinox в качестве базовой платформы.

http://www.springsource.org/dmserver

Блог Роба Харропа стоит следовать, если вы увлекаетесь разработками OSGi.

И чтобы ответить на ваш вопрос, вот репозиторий Spring для OSGi bundle:

http://www.springsource.com/repository/app/

Другие советы

Есть также Орбита Затмения который имеет несколько предварительно упакованных пакетов для использования Eclipse.И вместо того, чтобы вносить изменения в манифест пакета напрямую, вы можете создать пакет-оболочку, который сам предоставляет Манифест, и включить Jar как есть с Bundle-ClassPath:foo.jar заголовок.Это немного менее эффективно делать таким образом, поскольку во время выполнения извлекается foo.jar (по крайней мере, в Equinox), но вам, возможно, будет проще управлять процессом сборки с помощью этого.

Spring repo также является хорошим источником библиотек с открытым исходным кодом, которые были OSGI'enified.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top