Deployed application with automatic bundle update

Hi all, I pray that you are well.

I suspect I know the answer to this question, but thought I’d ask:

When you deploy a standalone application from Bndtools, using the “exploded jar” layout, is there an easy way (out-of-the-box) to have the launcher listen for changes to the jar/ folder and automatically have it reload changed bundles? At the moment, when I want to update a bundle, I need to restart my server. The restart time is not too long, but now that it is live it is long enough that people might happen to hit the server in that short window when it is down (it’s already happened once). And I’d like not to have to wait until after hours to deploy changes.

(I didn’t realise how much I appreciated this feature while developing using Bndtools and I’m really missing it!)

Thanks to anyone that can offer insight (or indeed for anyone who has read this far and thought about trying to help, even if they were unable :smile:).

Fr Jeremy

Sounds like a perfect job for Apache Felix FileInstall?

If it’s as simple as installing FileInstall and pointing it at the jar directory, then that will be great! But how will that interact with the Bnd launcher? Will it be an issue? Do you have experience with it in the real world? I want to avoid a hybrid situation where FileInstall is responsible for some bundles and the Bnd launcher is responsible for others - I can see is a recipe for disaster! I really like that Bndtools allows me to easily go from a bndrun file to a running standalone application, and I don’t want to lose that. Hopefully it’s as simple as you say.

There might be problems but I guess we could make it work. Alternatively, when I designed FileInstall so many moons ago, it was a few lines. The Apache guys turned it into a much larger beast but I am ok to add such a function to the launcher?