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

运行openai-java示例代码遇SSLHandshakeException错误求助

解决openai-java库SSLHandshakeException(PKIX路径构建失败)问题

核心问题

你导入的是openai.com的证书,但实际请求的目标域名是api.openai.com,二者证书不同,导致导入无效。以下是针对性解决步骤:

  1. 获取api.openai.com的正确证书

    • 方法一(浏览器):访问api.openai.com,点击地址栏锁图标 → 「证书」→ 「详细信息」→ 「复制到文件」,选择Base64编码的X.509格式,保存为api-openai.crt。
    • 方法二(命令行):执行以下命令直接从服务器导出证书:
      keytool -printcert -rfc -sslserver api.openai.com:443 > api-openai.crt
      
  2. 将证书导入JDK信任库
    找到你的JDK安装目录下的jre/lib/security/cacerts文件(默认密码为changeit),执行导入命令:

    keytool -import -trustcacerts -file api-openai.crt -alias api-openai -keystore "你的JDK完整路径/jre/lib/security/cacerts"
    

    注意:如果项目使用独立JRE,需对应修改JRE目录下的cacerts文件,而非JDK下的。

  3. 验证证书导入结果
    执行命令确认证书已成功导入:

    keytool -list -keystore "你的JDK完整路径/jre/lib/security/cacerts" -alias api-openai
    

    若能看到证书条目,说明导入有效。

  4. 额外排查点

    • 确认项目运行时使用的JDK/JRE与你导入证书的实例一致:检查IDE的项目SDK配置,或通过java -version命令验证环境变量指向的JDK。
    • 若不想修改系统信任库,可在程序启动时通过VM参数指定自定义信任库:
      -Djavax.net.ssl.trustStore=/path/to/your/custom/cacerts -Djavax.net.ssl.trustStorePassword=changeit
      
    • 完成证书配置后,Java程序才能正常发起请求,此时才会触发Postman中出现的配额超限提示,后续可再处理配额问题。

内容的提问来源于stack exchange,提问作者Yang Feng

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 14:05:29