Over a million developers have joined DZone.

OSGi Contracts: For Devs Who Think the Package Version Model is Too Much Work

Build APIs from SQL and NoSQL or Salesforce data sources in seconds. Read the Creating REST APIs white paper, brought to you in partnership with CA Technologies.

An experimental release of bnd(tools) 2.2 has a new feature called contracts.  A recent blog post on OSGi.org explains who these contracts are for:

Though the OSGi has a very elegant package version model there are still many that think this is too much work. They do not want to be bothered by the niceties of semantic versions and just want to use, let's say, Servlet 3.0. For those people (seemingly not interested in minimizing dependencies) the OSGi Alliance came up with contracts in OSGi Core, Release 5.0.0. A contract allows you to:

   1.   Declare that a bundle provides the API of the given specification
   2.   Require that the API comes from a bundle that made the declaration

-- Peter Kriens

Read the rest of the article to get an idea of why these contracts work, even though they're seem strange to the experienced OSGi user.

The Integration Zone is brought to you in partnership with CA Technologies.  Use CA Live API Creator to quickly create complete application backends, with secure APIs and robust application logic, in an easy to use interface.


The best of DZone straight to your inbox.

Please provide a valid email address.

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}