OSGi 스펙은 공개 표준 조직인 OSGi Alliance에 의해 정의 및 유지보수됩니다. 이 스펙에서는 음성, 데이터, 멀티미디어 무선/유선 네트워크 관리에 대한 공개 표준을 간략히 소개합니다. OSGi 서비스 플랫폼 스펙에서는 번들을 사용하여 서비스 전달 및 관리에 대한 공통된 공개 아키텍처를 정의합니다.
OSGi 애플리케이션 프레임워크에서는 Java™ EE 및 OSGi 기술 모두를 사용하는 모듈 애플리케이션을 번들로 개발, 어셈블, 배치하는 프로그래밍 모델을 제공합니다.
OSGi 스펙에 대한 자세한 정보는 OSGi Alliance Specifications를 참조하십시오.
Java 엔터프라이즈 애플리케이션용 OSGi는 OSGi 스펙의 버전 4.2에 초점을 둡니다.
OSGi 스펙의 버전 4.2는 Spring 프레임워크 어셈블리 모델의 표준화된 버전인 Blueprint 컴포넌트 모델의 정의를 포함합니다. Blueprint 컴포넌트 모델은 번들 내에서 함께 컴포넌트를 연결하는 방법과 런타임 환경에서 Blueprint 컴포넌트 컨테이너가 구성 및 종속성을 삽입하는 방법을 설명합니다.
컴포넌트 및 이들이 이용하는 자원은 Spring 애플리케이션 컨텍스트의 표준화에 해당하는 XML 모듈 Blueprint 파일에 선언됩니다. OSGi 환경에서 파일이 확장되므로 컴포넌트는 서비스 레지스트리에 대한 서비스로 자동으로 공개될 수 있으며, 참조는 서비스 레지스트리에서 발견된 서비스로 자동으로 분석될 수 있습니다.
Blueprint 컴포넌트 모델에서는 서버 환경에서 격리되는 단위 테스트를 구성하는 기능을 포함하여 Spring 프레임워크의 단순성을 제공합니다. Blueprint는 구성 메타데이터를 표준화하므로 컴포넌트 모델의 스펙을 통제합니다.