Skip to content

OSGi and ServiceLoaders

Will Rogers edited this page Oct 27, 2016 · 11 revisions

Since CS-Studio is built using Eclipse, it uses OSGi, "a component and service model for Java".

One significant benefit of using OSGi is that it helps keep code modular with well-defined interfaces. In Eclipse, OSGi bundles map to Eclipse plugins.

A second benefit of OSGi is its definition of services. A plugin may advertise that it provides a certain service and other plugins request that service. This allows a pluggable interface whereby different plugins may provide the same service in different ways.

However, Java has its own method of providing services, known as Java-SPI (service provider interface). We are finding that SPI and OSGi service mechanisms do not work well together.

Meanwhile, Project Jigsaw, an implementation of the Java Module System, will arrive in Java 9.

Clone this wiki locally