如何解决 java.lang.UnsupportedOperationException: clientBuilder.sslSocketFactory(SSLSocketFactory) 在 JDK 9+ 上不受支持?

How to solve java.lang.UnsupportedOperationException: clientBuilder.sslSocketFactory(SSLSocketFactory) not supported on JDK 9+?

我每次尝试 运行 一个项目时都会收到以下错误。我确实将 Project SDK 设置为 java 8,尝试打开 jdk 以及 oracle jdk,但仍然出现以下错误。我以前使用过这个项目,没有遇到任何问题,但它在我的新计算机上没有 运行。在这个 machine 上,我之前安装了 java 11,但我删除了它。我正在使用 mac.

有谁知道我为什么会收到这个错误?

提前致谢。

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'getClientHttpRequestFactory' defined in class path resource [com/vocalink/bps/reporting/config/RestTemplateConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.http.client.ClientHttpRequestFactory]: Factory method 'getClientHttpRequestFactory' threw exception; nested exception is java.lang.UnsupportedOperationException: clientBuilder.sslSocketFactory(SSLSocketFactory) not supported on JDK 9+

问题出在jdk版本中。 此问题有 2 个解决方案:

  1. 更新okhttp版本;
  2. 使用较旧的 jdk(使用 1.8.0_202 并且有效)。

和这里的答案一样

您正在使用一种长期弃用的方法,该方法无法在一系列 JVM 版本中得到完全支持。