Тема может немного устарела, но тем не менее...
Pax имеет отличную поддержку URL-адресов maven, у него даже есть обработчик URL-адресов, позволяющий динамически преобразовывать jar, отличные от osgi, в красивые аккуратные пакеты.
http://wiki.ops4j.org/display/paxurl/Mvn+Protocol
<dependency>
<groupId>org.ops4j.pax.url</groupId>
<artifactId>pax-url-wrap</artifactId>
<version>1.2.5</version>
</dependency>
<dependency>
<groupId>org.ops4j.pax.url</groupId>
<artifactId>pax-url-mvn</artifactId>
<version>1.2.5</version>
</dependency>
Тогда команда будет такой:
install -s mvn:groupId:artifactId:version:classifier
Примечание: сценарий «куриное яйцо» — вы должны сначала установить их с помощью обработчика URL-адресов файла: или поместить их в каталог автоматического развертывания.
Все это встроено в дистрибутив Karaf, так что, может быть, взгляните на исходный код лаунчера Karaf?
2-е примечание: развертывание моментальных снимков включается путем добавления @snapshots к URL-адресу репо, конфигурация управляется через ConfigAdmin.
С точки зрения управления всеми вашими зависимостями, определенными POM, взгляните на функции Karaf — есть плагин, который позволяет генерировать XML-файл функций, который затем можно использовать для развертывания всего вашего приложения: http://karaf.apache.org/manual/2.1.99-SNAPSHOT/developers-guide/features-maven-plugin.html
Кроме того, этот XML-артефакт может быть развернут в вашем OBR, поэтому вы можете взять ванильную настройку Felix/Equinox/Karaf, добавить обработчик URL-адресов mvn и настроить с помощью репозитория mvn вашей компании, а затем подготовить все приложение =)
person
earcam
schedule
24.03.2011