How can I run a subprocess in Equinox with dynamic bundle installation?

you can use the Equinox Launcher API. Here’s an example of how you can use the Equinox Launcher api to launch a new instance of equinox with a set of bundles: ` EquinoxLauncher launcher = new EquinoxLauncher(); String equinoxHome = “/path/to/equinox/home”; String[] bundlePaths = { “/path/to/bundle1.jar”, “/path/to/bundle2.jar” }; EquinoxRunConfiguration runConfig = launcher.newConfiguration(); runConfig.setWorkingDir(new File(equinoxHome)); runConfig.setFramework(new … Read more

Better handling of Thread Context ClassLoader in OSGi

Great question, we’ve been doing the same work around (in Felix/Karaf/Servicemix4.2) and have been searching for a better solution. Here is the response that I got back from the Felix team… http://old.nabble.com/Can-the-thread-context-classloader-issue-be-solved-at-all–td28260809.html#a30704352 Essentially, they say that there isn’t a better solution at the moment. However, I do see that Equinox references some other options including … Read more

Scala in OSGI container?

Thanks to everyone for the answers, you led me to the solution! I will describe it here in a little simpler terms for a wider audience. Goal: Code in scala, deploy to OSGi. Tools used: Equinox OSGi implementation Eclipse Helios 3.6, Scala 2.9 Procedure Install Scala IDE for Eclipse. Find version that will work with … Read more

Java 8 & Missing required capability Require-Capability: osgi.ee; filter=”(&(osgi.ee=JavaSE)(version=1.8))”

The error means that your bundle has a Require-Capability: osgi.ee; filter=”(&(osgi.ee=JavaSE)(version=1.8))” entry in its manifest. So this means the bundle will only start when there is a bundle that provides this capability. In case of the osgi.ee capability it is the OSGi framework (equinox) that should provide this capability. Apparently it does not do this. … Read more