Подтвердить что ты не робот

OSGi: Blueprint vs. Spring DM

Я немного смущен о Blueprint и Spring DM:

Из того, что я думаю, верно:

  • Spring DM - это структура, определенная Spring Source
  • Blueprint - это структура, определенная Alliance OSGi
  • Blueprint "взял" многие из своих идей из Spring DM

Нет

Можно ли ожидать, что эти две структуры станут едиными в будущем (слияние)? Если нет, какой из них будет самым надежным в будущем?

4b9b3361

Ответ 1

OSGi 4.2 представляет спецификацию службы Blueprint на основе Spring Проект динамических модулей, для которого Spring DM (2.x) является Эталонная реализация (RI).

Короче: Blueprint - это спецификация, Spring DM - это реализация Blueprint API

Ответ 2

Blueprint был разработан в OSGi Alliance под руководством SpringSource/Interface21.

Однако, если вы ищете способ использовать OSGi, используйте Declarative Services (DS) с аннотациями между пакетами (службами). По моему опыту, вам действительно не нужен проводной XML, когда вы делаете небольшие связные связки. DS намного лучше работает с сервисами, чем Blueprint/ Spring DM, поскольку они склонны "скрывать" динамичность, в то время как DS просто делает ее тривиальной для использования.

Ответ 3

Я понимаю, что SpringDM - это мертвый проект. Проверьте даты GA и даты выпуска. Поэтому, хотя он в значительной степени способствовал разработке спецификации, в конце концов, у него был плохой подход к загрузчикам классов. Apache-Aries - это сильная реализация. Обратите внимание, что использование чертежа не исключает использования spring. Я бы предложил Karaf как надежную платформу, которая может использовать Eclipse Equinox или Apache Felix для движка OSGI. Мне нравится дизайн по сравнению с DS, если вы разрабатываете на уровне приложений, где ваши службы могут использоваться другими командами или организациями на вашем предприятии или расширены вашими клиентами. Я думаю, что план также лучше подходит для традиционных корпоративных вычислительных сред. Но DS или Ipojo могут быть более подходящими в зависимости от конкретной целевой среды.

Ответ 4

В дополнение к тому, что ответил Дмитрий Пищухин, следует отметить, что проект Spring DM - это несколько мертвый проект, так как DM 2 никогда не достигла версии "выпуска".

Вместо этого он был внес вклад в фонд Eclipse, где он мутировал в проект Близнецы Blueprint.

Ответ 5

Во вступлении в документацию Близнецов Blueprint они четко объясняют разницу: http://www.eclipse.org/gemini/blueprint/documentation/reference/1.0.2.RELEASE/html/index.html

Я воспроизвожу здесь:

Глава 1. Spring Динамические модули становятся Eclipse Gemini Blueprint

В конце 2009 года, в качестве участника проектного предложения Gemini, SpringSource внедрил Spring Dynamic Modules (также известный как Spring OSGi) проект в Eclipse Foundation. Spring База данных DM v2 была перенесена на Eclipse.org вместе со своим трекером и форумом. Проект стал двойной лицензией по лицензии Apache и EPL.

Пока имя изменилось, код и его функции остались прежними. Существующие приложения Spring DM могут быть легко перенесены в Eclipse Gemini Blueprint, как указано в руководстве по миграции.