diff --git a/shell/ssh/src/main/java/org/apache/karaf/shell/ssh/Activator.java b/shell/ssh/src/main/java/org/apache/karaf/shell/ssh/Activator.java index 31e5fab..f503879 100644 --- a/shell/ssh/src/main/java/org/apache/karaf/shell/ssh/Activator.java +++ b/shell/ssh/src/main/java/org/apache/karaf/shell/ssh/Activator.java @@ -116,10 +116,15 @@ if (server == null) { return; // can result from bad specification. } + + ClassLoader oldTCCL = Thread.currentThread().getContextClassLoader(); try { + Thread.currentThread().setContextClassLoader(SshServer.class.getClassLoader()); server.start(); - } catch (IOException e) { + } catch (Exception e) { LOGGER.warn("Exception caught while starting SSH server", e); + } finally { + Thread.currentThread().setContextClassLoader(oldTCCL); } }