Если вы подумаете об этом, попытка обработать удаленный импорт / экспорт пакетов очень сложна, хрупка и подвержена ошибкам; вам нужно будет отправить все события жизненного цикла пакета по проводам и записать их в импортирующую систему (что потребует кэширования).
Кроме того, фреймворк должен знать заранее, чтобы использовать эти определения классов (вы не можете создать экземпляр класса, который ссылается на классы, которые недоступны вашему загрузчику классов). Загрузчик классов удаленного пакета может зависеть от классов из другого загрузчика классов, эта цепочка может вращаться и обходить сеть, что делает загрузку классов длительностью.
Поставь другой путь; Ваши локальные пакеты никогда не разрешатся без определений классов, от которых они зависят, и учитывая, что в сети / оборудовании с очень плохим SLA может быть более тысячи потенциальных удаленных экспортеров, это не будет хорошо масштабироваться или будет очень устойчивым, учитывая ошибки распределенных вычислений .
Если бы мы попытались сделать удаленные пакеты, фреймворк должен был бы импортировать все экспортированные пакеты со всех доступных удаленных узлов, а затем выбрать только один, чтобы импортировать каждый экспорт пакета из (это было бы произвольно, и если узел выбора отключился, весь процесс импорта удаленного пакета должен был бы снова сработать).
Что вам нужно сделать, это отделить ваши API / интерфейсы от вашей реализации, затем вы распределяете пакет API по всем узлам, которые в этом нуждаются, а затем используете dOSGi для импорта сервисов.
Извините, если это неясно или неожиданно, но это должно объяснить, почему просто нецелесообразно иметь удаленно экспортируемые пакеты.
на примечании стороны; Я не уверен, что r-osgi активно поддерживается или соответствует новейшей спецификации Remote Services Admin , от просмотра последнего коммита для магистрали SVN было 14/02/2011. Здесь перечислены некоторые альтернативные реализации dOSGi здесь (но избегайте CXF).
РЕДАКТИРОВАТЬ : С точки зрения развертывания, распространение ваших пакетов (и конфигурации) может быть выполнено из OBR (имеется число открытых и несколько реализаций Felix / Eclipse ) или репозиторий maven может быть переназначен с pax url handler .