blob: 880b4446baa15ae90612cb48d834ba01f02ccf53 [file] [log] [blame]
<div id="midcolumn">
<h2>Gemini Blueprint 2.1.0 is out</h2>
<p>
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 <a href="https://www.eclipse.org/gemini/blueprint/download/">Download instructions</a>,
<a href="https://www.eclipse.org/gemini/blueprint/documentation/reference/2.1.0.RELEASE/html/index.html">Reference documentation</a> and the
<a href="http://git.eclipse.org/c/gemini.blueprint/org.eclipse.gemini.blueprint.git/plain/changelog.txt?h=2.1.0.RELEASE">Change log</a>
</p>
<h2>Annotation-based service injection re-introduced in Gemini Blueprint 2.1.0</h2>
<p>
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:
</p>
<pre>
@ServiceReference(filter = "(service.attribute=some.Attribute)")
public void setService(ServiceType service) {
....
}
</pre>
<p>or using field-based injection, like so:</p>
<pre>
@ServiceReference(filter = "(service.attribute=some.Attribute)")
private ServiceType service;
</pre>
<p>
The <a href="documentation/reference/2.1.0.RELEASE/service-registry.html#service-registry:annotations-vs-xml-declarations">@ServiceReference annotation</a>
supports all attributes found in the XM service import declaration.
</p>
<h2>Gemini Blueprint</h2>
<div id="introText">
<p>
Eclipse Gemini Blueprint is the reference implementation for the <a href="http://www.osgi.org">OSGi
Alliance</a> Blueprint Service (chapter 121 of the OSGi 4.2 Compendium Specification).
</p>
</div>
<p>
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.
</p>
<p class="bottom">
Gemini users may also be interested in Eclipse <a href="https://www.eclipse.org/virgo/">Virgo</a>, 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.
</p>
</div>