Question

Was there concurrent technologies at that time? What was advantages of OSGi compared to other technologies and to native (pre 3.0) technology?

Was it helpful?

Solution

Perhaps the major benefit of OSGi is the ability to have isolated separate bundles. This allows one bundle to hide its dependencies from the global classloader.

Many times when building a large system, one component will need a certain library, while another uses a different yet incompatible version of the same library. In this case picking one version of the library over the other breaks the other.

The separate classloaders for JARs and WARs were an early attempt and at allow some modularisation and management of dependencies for separate and isolated components. If you look at older versions of WebLogic etc you will notice they repackage commonly used libraries (eg Xerces) under the weblogic.* so as to not have a clash with a Xerces your app may wish to include.

With OSGI it is possible for each bundle to only expose a single package containing the interface to the core. Each bundle can then use their own libs without worrything about the classpath class problem described above.

OTHER TIPS

Please visit the following site:

The Eclipse 3.0 platform: adopting OSGi technology

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top