通过代理同步设置 - 无法同步 IDE 设置

Sync settings over proxy - Failed to Sync IDE settings

我无法通过代理同步我的 IntelliJ IDEA 设置。

当我尝试同步时,出现错误:

我的日志显示签名异常:

2021-09-02 10:00:15,784 [1760431]   INFO - cloudConfig.CloudConfigManager - === Start.updateIO === 
2021-09-02 10:00:15,784 [1760431]   INFO - cloudConfig.CloudConfigManager - === updateIO === 
2021-09-02 10:00:15,904 [1760551]   INFO - cloudConfig.CloudConfigManager - java.security.SignatureException: Signature does not match. 
javax.net.ssl.SSLHandshakeException: java.security.SignatureException: Signature does not match.
    at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
    at java.base/sun.net.www.protocol.http.HttpURLConnection.run(HttpURLConnection.java:1974)
    at java.base/sun.net.www.protocol.http.HttpURLConnection.run(HttpURLConnection.java:1969)
    at java.base/java.security.AccessController.doPrivileged(Native Method)
    at java.base/sun.net.www.protocol.http.HttpURLConnection.getChainedException(HttpURLConnection.java:1968)
    at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1536)
    at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1520)
    at java.base/java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:527)
    at java.base/sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:334)
    at com.jetbrains.cloudconfig.AbstractHttpClient.download(AbstractHttpClient.java:94)
    at com.jetbrains.cloudconfig.CloudConfigFileClient.list(CloudConfigFileClient.java:192)
    at com.intellij.idea.cloudConfig.ETagCloudConfigFileClient.list(ETagCloudConfigFileClient.java:36)
    at com.intellij.cloudConfig.CloudConfigManager.listFiles(CloudConfigManager.java:2659)
    at com.intellij.cloudConfig.CloudConfigManager.lambda$updateIO(CloudConfigManager.java:764)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory.run(Executors.java:668)
    at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory.run(Executors.java:665)
    at java.base/java.security.AccessController.doPrivileged(Native Method)
    at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory.run(Executors.java:665)
    at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: javax.net.ssl.SSLHandshakeException: java.security.SignatureException: Signature does not match.
    at java.base/sun.security.ssl.Alert.createSSLException(Alert.java:131)
    at java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:349)
    at java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:292)
    at java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:287)
    at java.base/sun.security.ssl.CertificateMessage$T12CertificateConsumer.checkServerCerts(CertificateMessage.java:654)
    at java.base/sun.security.ssl.CertificateMessage$T12CertificateConsumer.onCertificate(CertificateMessage.java:473)
    at java.base/sun.security.ssl.CertificateMessage$T12CertificateConsumer.consume(CertificateMessage.java:369)
    at java.base/sun.security.ssl.SSLHandshake.consume(SSLHandshake.java:392)
    at java.base/sun.security.ssl.HandshakeContext.dispatch(HandshakeContext.java:443)
    at java.base/sun.security.ssl.HandshakeContext.dispatch(HandshakeContext.java:421)
    at java.base/sun.security.ssl.TransportContext.dispatch(TransportContext.java:182)
    at java.base/sun.security.ssl.SSLTransport.decode(SSLTransport.java:171)
    at java.base/sun.security.ssl.SSLSocketImpl.decode(SSLSocketImpl.java:1418)
    at java.base/sun.security.ssl.SSLSocketImpl.readHandshakeRecord(SSLSocketImpl.java:1324)
    at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:440)
    at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:411)
    at java.base/sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:567)
    at java.base/sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:197)
    at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1592)
    at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1520)
    at java.base/sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:250)
    at com.jetbrains.cloudconfig.AbstractHttpClient.download(AbstractHttpClient.java:92)
    ... 11 more
Caused by: java.security.cert.CertificateException: java.security.SignatureException: Signature does not match.
    at com.jetbrains.b.a.L.a(L.java:496)
    at com.jetbrains.b.a.L.checkServerTrusted(L.java:483)
    at java.base/sun.security.ssl.AbstractTrustManagerWrapper.checkServerTrusted(SSLContextImpl.java:1510)
    at java.base/sun.security.ssl.CertificateMessage$T12CertificateConsumer.checkServerCerts(CertificateMessage.java:638)
    ... 28 more
Caused by: java.security.SignatureException: Signature does not match.
    at java.base/sun.security.x509.X509CertImpl.verify(X509CertImpl.java:422)
    at java.base/sun.security.x509.X509CertImpl.verify(X509CertImpl.java:390)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    at com.jetbrains.b.a.L.a(L.java:489)
    ... 31 more
2021-09-02 10:00:15,906 [1760553]   INFO - cloudConfig.CloudConfigManager - === End.updateIO === 

我的设置

我在企业代理上使用 IntelliJ-IDEA 2021.2(终极版)。

我的企业代理已在设置中定义,检查连接成功:

我的企业自签名证书被接受:

我可以成功显示和安装来自市场的插件。

这是我的第一个问题,如果我可以改进,请随时发表评论。

您的代理服务器替换了远程 ssl 证书。您应该排除 JetBrains account or add your custom certificate that your proxy uses into the IDE JDK which IDE uses to run 的代理。此捆绑包 JDK 位于 <IDE HOME>/jbr 目录中。

有关如何将证书导入 JDK 的步骤,请参阅 Import the Certificate as a Trusted Certificate

请注意,导入自定义证书时,您必须确定自己在做什么。您可能需要就此联系您的 IT 部门。