The problem is that the threads created by the Jolokia Server themselves as part of the Executor are not tagged as daemon threads. So when the cleanup threads tries to see if it shuts down, the threads that was created in the Executor will stop it from shutting down.
I made a change to use a threadfactory to make them all daemon threads to get around this. You can see it at https://github.com/senthilnest/jolokia. If it makes sense could you pull that?