This website and its associated repositories, are deprecated and no longer supported by the OSGi Alliance. Please visit for the latest supported version of OSGi enRoute.

This enRoute v2 archive site is kept for those who do not intend to use the latest version of OSGi enRoute. If you are new to OSGi enRoute, then please start with the latest OSGi enRoute.

  • Why OSGi enRoute?

    OSGi is by far the best way to develop software systems and take advantage of modularity. However, until now the threshold to get started was high due to lack of a good tool chain, proper service based libraries, and tutorials, with the consequence that many people gave up before the benefits became visible.

    The vision of the OSGi Alliance with the enRoute project is therefore to make OSGi as easy as possible for developers to get started with OSGi without compromising its core values.

    Read more ...

  • What is OSGi enRoute?

    OSGi enRoute consists of the following aspects:

    • Community – A growing community (well, any new project will easily have a growing community, please join!).
    • Programming Model – A quite cool, best practice, µservice-based development model.
    • Tool Chain – A selected tool chain that supports the OSGi programming model over all the stages of development.
    • Education – A (hopefully growing) number of tutorials and examples.
    • Incubator – Acts to experiment with future services.

    Read more ...

  • How to get started?

    To get a feel for OSGi enRoute the best way to start is doing the Quick Start tutorial.

    If you like what you see, you should try the longer base tutorial. This is a zero-knowledge required tutorial that guides you through all the principles of developing with OSGi enRoute.

    If you are an architect and want to know more about what enRoute is and does then you start reading the overview of the enRoute project.

    Read more ...


  • Concurrency App Note SMA has sponsored an App note about concurrency in OSGi. Read the App Note ...
  • OSGi enRoute 2.0.0 OSGi enRoute 2.0.0 is now available. See v2.0.0 for release notes.
  • OSGi enRoute at EclipseCon See the promotion video of Paul Fraser's talk at EclipseCon 2016.
  • DTOs, what the heck? – Data Transfer Objects are a cornerstone of OSGi enRoute. However, people are confused about the non-object oriented nature of them. A new app note explains the rational of DTOs. read more ...
  • Karaf Development – Matteo Rulli explains how you can use Bndtools to interactively debug bundles using the remote agent support. read more ...
  • VAADIN! – A new example repository with OSGi enRoute and Vaadin. Shows you can use Vaadin in a service oriented world and DTOs. read more ...
  • Site updates – Bndtools 3.2.0 release required an update of the tutorials. Front page and background documentation updated.
  • Bnd Maven Repository Plugin – In Bndtools 3.2.0 Released there is a new Maven plugin. We've also provided a tutorial. See more ...
  • Rolling logger – A new bundle that saves a number of log files and deletes them later. See more ...
  • Wrapping tutorial – An extensive JAR Wrapping tutorial was added to OSGi enRoute. It is currently under review, feedback more than welcome.
  • Bndtools 3.2 Workspace – Bndtools 3.2 (which is beta right now) has the following process built in (Thanks Neil!); Just create a new Eclipse workspace and then do New/Other/Bndtools/Bnd OSGi Workspace. Make sure you put the bnd workspace in another directory then the Eclipse workspace.
  • OSGi enRoute Articles – Second article about OSGi & OSGi enRoute in JAX Enter See more ... (or here for the first part).
  • App Notes – New section with Application notes, first app note is about Gogo because it can do so much more than most people know See more ....
  • Tutorials and Examples pages – The site got a small make over and now provides separate pages for the examples and the tutorials.