|Support jar:file protocol in OSGI Storage ? [message #1770155]
||Tue, 08 August 2017 16:49
| Jakub Siberski
Registered: August 2017
In my team we have desktop application that is based on Eclipse (N4JS).|
In addition to that we need to provided headless version that would provide some core functionality.
We did create such a tool, a plain self contained executable JAR.
Unfortunately to achieve this we had to cut many corners.
We need to use workarounds for extension points,
we need keep alternative logic implementations of the core for the
UI and the headless product, keep two types of bootstrapping in sync, etc, etc.
We want to move to the headless implementation based on the eclipse platform.
Additionally final product should still be self contained executable jar.
I did experiment a bit with the implementation and I have solution
that fulfills all the above (example on GH). Unfortunately
there is one Equinox / OSGI behavior that I would like to avoid.
During execution one of the first things I do is installing bundles
with BundleContext.installBundle, after which I can call code from any bundle.
But all the bundles will be actually installed to the filesystem
into the location defined by the "osgi.configuration.area".
Because of (many) reasons I would like to avid this manifestation of bundles
in the filesystem. I had tried few things but in the end my efforts
break at Storage.getContentFile() or related methods
in the org.eclipse.osgi.storage.Storage.
To summarize, I have some solution on how to deliver and bootstrap Eclipse / Equinox
headless application in a self contained JAR.
But is there a way to instrument the system to:
- avoid putting the bundles into the filesystem that is done by the OSGI?
- make Storage work with formats than plain other than file:/..., i.e. jar:file:/...?
Powered by FUDForum
. Page generated in 0.01608 seconds