You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Eclipse通过EGit访问GitLab时出现SSL握手失败错误

解决方案

1. 切换EGit的HTTP客户端为系统原生客户端

EGit 6.0.0默认使用内置Apache HTTP客户端,与命令行Git的证书/代理逻辑不一致。修改步骤:

  • 打开Window > Preferences > Team > Git > Configuration
  • 点击Add Entry,添加两个配置项:
    • 键:http.useSystemProxies,值:true
    • 键:http.sslBackend,值:openssl
  • 或者直接在Window > Preferences > Team > Git > HTTP中,将HTTP Client设置为System(部分版本显示为Native)

2. 导入GitLab根证书到Eclipse的JVM信任库

Eclipse自带的JDK信任库可能缺少GitLab的根证书,而命令行Git使用的是系统证书库:

  1. 浏览器打开https://gitlab.com,导出网站的根证书(如DigiCert Global Root CA,格式为CER)
  2. 找到Eclipse使用的JDK路径,进入jre/lib/security目录
  3. 执行以下keytool命令导入证书(默认密码为changeit):
keytool -importcert -file [证书文件路径] -keystore cacerts -alias gitlab-root-cert

3. 降级EGit至兼容版本

EGit 6.0.0与GitLab的SSL握手协议存在兼容性问题,可降级到之前的稳定版本:

  • 打开Help > Install New Software
  • 点击Add,输入旧版本EGit更新站点,例如https://download.eclipse.org/egit/updates-5.13/(对应Eclipse 2022-03版本)
  • 先卸载当前的EGit组件,再安装旧版本

4. 强制Eclipse使用TLS 1.2/1.3协议

GitLab要求使用TLS 1.2及以上版本,可在Eclipse启动参数中强制启用:

  • 打开Eclipse安装目录下的eclipse.ini文件
  • 在-vmargs下方添加:
-Dhttps.protocols=TLSv1.2,TLSv1.3
  • 重启Eclipse

内容的提问来源于stack exchange,提问作者John Aronson

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 13:42:22