classpath and there might be errors we can't control, I'd say we can safely catch a general Exception there and return an Absent value.
I'd agree with that, but the tricky thing here is that what is thrown isn't even an Exception, it's an Error. So we'd have to catch all Errors here (or just this specific one), which seems nastier.
I've been trying to see what happens if we add the other connector factory implementations to the jclouds-services feature in karaf. Unfortunately, it looks like that will require a change to jsch-agent-proxy itself, because currently it's stuck with a circular OSGi dep.
I'll open a PR to see what happens there. Regards ap