Strategy | Options | Pros | Cons | Note |
---|
Build-time conversion | - Using tools (such as maven-bundle-plugin) to convert plain jars into OSGi bundles
- Use already-converted 3rd party bundles from Spring DM, FElix Felix Common or Eclipse Orbit
| | | Maven Bundle Plugin: http://felix.apache.org/site/maven-bundle-plugin-bnd.html\\Image Added Felix Commons: http://felix.apache.org/site/apache-felix-commons.html\\Image Added Ecipse Orbit: http://www.eclipse.org/orbit/\\Image Added Spring DM Repo: http://static.springframework.org/osgi/docs/1.1.1/reference/html/appendix-osgi-repo.htmlImage Added |
Runtime converstion | - Before the jar is installed (BundleContext.installBundle())
- Add a hook to the OSGi runtime to wrap the jar (such as
| | | Equinox Hooks:
http://wiki.eclipse.org/index.php/Adaptor_Hooks\\Image Added http://www.eclipsecon.org/2008/sub/attachments/Equinox_Framework_How_to_get_Hooked.pdfImage Added |
Hybrid conversion | - Build-time will generate the META-INF/MANIFEST.MF as a side file
- Runtime will wrap the 3rd party jar with the side file
| | | |