Where to Start

New to OSGi?

If you are developer that is new to OSGi and want to start by writing code then OSGi enRoute is the place for you.

OSGi enRoute is an OSGi Alliance sponsored project that provides a quick start for developers new to OSGi. Offering simple steps for you to get results fast it allows you to see how easy it can be to create stand-alone OSGi applications. The objective of enRoute is to give you a solid understanding of the basics of OSGi and provide an onramp for you to build modern, modular, maintainable software applications and systems.

enRoute is based on the latest OSGi R7 specifications and Reference Implementations and offers an opinionated approach to OSGi focusing on Declarative Services (DS) and a Maven based tool chain.

Until recently OSGi examples and tools exposed too much infrastructure to new developers and this made OSGi hard to get started with. In addition there are way too many outdated and sometimes incorrect OSGi tutorials available online. Please don’t use these. OSGi enRoute is the goto place to get stated.

An Experienced OSGi Developer?

If you are an experienced OSGi developer wanting to use more advanced or specific features or capabilities or find out about new upcoming specifications then enRoute is probably not for you.

You might be interested in the Learning Resources page which provides details of some OSGi books, member OSGi training courses and OSGi tutorials.

  • If you have questions about OSGi technology there is an OSGi developer forum you can use. This forum is closely watched and contributed to by many of the OSGi Expert Group members and OSGi community so its a great place to get involved.
  • The OSGi specifications are open and freely available for your review. We have also recently made the R7 drafts available in a searchable html format.
  • Technical work undertaken by the OSGi Alliance is performed in RFPs and RFCs. These documents detail the work being performed on new specifications. These documents  are all visible live in the OSGi design repository on GitHub. You are also encouraged to comment and feedback on these documents using the OSGi Bugzilla system.
  • You can also use the OSGi developer forum list to participate in discussions about the current and planned specifications.
  • bnd is a really useful tool to familiarize yourself with if you already have some OSGi experience. It is the engine behind a number of popular software development tools that support OSGi.
  • Bndtools is also worth exploring as a plugin to Eclipse that makes working with OSGi much easier. As it name implies its based on the powerful bnd engine.
  • Try out some of the different OSGi framework implementations. There are a number of commercial and open source options. The open source options include Apache Felix, Eclipse Concierge, Eclipse Equinox, Knopflerfish.
  • If you are interested to know more about the technology, or would like to meet up with some of the people involved with creating and using the specifications be sure to visit one of the conferences or meetups that the OSGi Alliance participates in around the world. The annual OSGi Community Event is a good place to strat but there are plenty of other events too.  You can find out more by following the OSGi Blog or OSGi Twitter account, or by joining the OSGi LinkedIn Group.
  • You are also of course always welcome to contact us directly if you don’t want to participate in the forum.

Other Useful Information