Skip to main content

Gemini Blueprint 2.1.0 is out

Gemini 2.1.0 features the latest Spring 4.3.x and annotation-based service injection and requires Java 1.8. gemini blueprint is available via maven central. See Download instructions, Reference documentation and the Change log

Annotation-based service injection re-introduced in Gemini Blueprint 2.1.0

The original Spring-DM implementation featured a proprietary extension to the OSGi blueprint spec: Annotation-based service injection into beans without the need for service import declarations in the blueprint XML context. With Gemini Blueprint 2.1.0, this feature has been re-introduced. Now, beans can declare service dependencies like so:

@ServiceReference(filter = "(service.attribute=some.Attribute)")
public void setService(ServiceType service) {

or using field-based injection, like so:

@ServiceReference(filter = "(service.attribute=some.Attribute)")
private ServiceType service;

The @ServiceReference annotation supports all attributes found in the XM service import declaration.

Gemini Blueprint

Eclipse Gemini Blueprint is the reference implementation for the OSGi Alliance Blueprint Service (chapter 121 of the OSGi 4.2 Compendium Specification).

Gemini Blueprint makes it easy to build Java applications that run in an OSGi framework. By using Gemini Blueprint, applications benefit from using a better separation of modules, the ability to dynamically add, remove, and update modules in a running system, the ability to deploy multiple versions of a module simultaneously (and have clients automatically bind to the appropriate one), and a dynamic service model.

Gemini users may also be interested in Eclipse Virgo, an open source, completely modular, OSGi-based Java application server. Its documentation is considered a supplement to Gemini Blueprint as it explains in detail, how OSGi can be used in various development and production scenarios.

Back to the top