I will see if I can get some more details on exactly how the plugin works. For now the best I can give you is that it is intended to allow the user to change the Java trust store and set a user certificate for authentication. We would like to eventually be able to use that certificate authentication to connect to the SonarQube server.
Is SonarLint doing similar things in Connected mode?
If we used the shared SSL context, when OkHttp enables ALPN for its SPDY-related stuff, it would also enable ALPN for other usages, which might crash them because ALPN is enabled when it isn't expected to be.
Looking at it again, it doesn't seem like SonarLint is ignoring the system properties. If it was, I would have expected it to fail the SSL connection because the default Java truststore does not have the right certificates. Those certificate's are provided by the internal plugin. Instead, Eclipse itself seems to "forget" the truststore information. It also only does this after a restart of Eclipse and not simply on connecting/defining a SonarQube server.