将IDEA IntelliJ连接Jira时出现handshake_failure错误求助
解决IntelliJ配置Jira任务服务器时的handshake_failure错误
我之前也碰到过一模一样的问题,折腾了好久终于解决了,给你几个亲测有效的方案试试:
检查IntelliJ使用的JDK加密配置
IntelliJ可能自带JetBrains Runtime(JBR)或者使用系统JDK,握手失败很多时候是JDK禁用了Jira服务器依赖的TLS协议或加密套件。- 打开
File > Project Structure > SDKs,确认当前IntelliJ使用的JDK路径。 - 找到该JDK下的
jre/lib/security/java.security文件,搜索jdk.tls.disabledAlgorithms配置项。 - 如果里面包含Jira服务器使用的协议(比如TLSv1.2),将其从禁用列表中移除,保存后重启IntelliJ。
- 打开
确保证书导入到正确的信任库
很多人会误把证书导入到系统JDK,但IntelliJ实际用的是自带的JBR,导致证书不生效:- 找到IntelliJ的JBR路径(比如Windows下是
C:\Program Files\JetBrains\IntelliJ IDEA 202x.x\jbr,Mac下是/Applications/IntelliJ IDEA.app/Contents/jbr)。 - 使用keytool命令导入证书:
信任库默认密码是keytool -importcert -file /path/to/jira-server.crt -keystore /path/to/jbr/lib/security/cacerts -alias jira-certchangeit,按提示确认导入即可。 - 重启IntelliJ后再测试连接。
- 找到IntelliJ的JBR路径(比如Windows下是
调整VM参数的TLS协议配置
只指定TLSv1太局限了,现在多数Jira服务器已经支持TLSv1.1及以上版本,强制用TLSv1反而会导致握手失败。正确的做法是:- 打开
Help > Edit Custom VM Options(这是修改IntelliJ VM参数的正确入口,不要随便找外部的.vmoptions文件)。 - 添加或修改为:
-Dhttps.protocols="TLSv1.1,TLSv1.2,TLSv1.3" - 重启IntelliJ后测试连接。
- 打开
检查内网代理设置
如果是公司内网环境,IntelliJ的代理配置错误也会引发握手问题:- 打开
File > Settings > Appearance & Behavior > System Settings > HTTP Proxy。 - 确认代理配置和公司内网要求一致,或者暂时勾选
No proxy测试是否能连接成功(排除代理干扰)。
- 打开
尝试升级IntelliJ版本
旧版IntelliJ(比如2016版)的JDK runtime对现代TLS协议支持不足,升级到较新版本(比如2023或2024版)可以解决很多兼容性问题,新版的JetBrains Runtime更新了加密库,对Jira服务器的支持更好。
内容的提问来源于stack exchange,提问作者Amnon
相关产品推荐
相关产品推荐

