如月雙五 2021-07-26 16:25 采纳率: 100%
浏览 165
已结题

httpclient-loadTrustMaterial-java:找不到符号

JDK1.6使用httpclient 在处理证书信任时 执行 loadTrustMaterial 报错:
java: 找不到符号
符号: 方法 loadTrustMaterial(,<匿名 org.apache.http.conn.ssl.TrustStrategy>)
位置: 类 org.apache.http.ssl.SSLContextBuilder
开始以为是jar包错误
去mvnrepository.com下了最新的jar包还是报这个错误

这是部分代码
SSLContextBuilder builder = new SSLContextBuilder();

        builder.loadTrustMaterial(null,new TrustSelfSignedStrategy());

        SSLConnectionSocketFactory sslsf = new SSLConnectionSocketFactory(builder.build());

        Registry<ConnectionSocketFactory> socketFactoryRegistry = RegistryBuilder
                .<ConnectionSocketFactory>create()
                .register("http", PlainConnectionSocketFactory.getSocketFactory())
                .register("https", sslsf)
                .build();

也不知道是不是JDK的问题,希望好giegie们告诉我怎么解决

  • 写回答

2条回答 默认 最新

  • 如月雙五 2021-07-27 12:53
    关注

    解决了 发现是引用包的问题
    JDK 1.8 maven项目
    SSLContextBuilder builder = new SSLContextBuilder();
    引用
    org.apache.httpcomponents:httpcore:4.4.10
    org.apache.httpcomponents:httpclient:4.5.6 均可以运行
    JDK1.6 web项目
    引用
    httpclient:4.5.1 可以运行但提示过时
    httpcore:4.4.10 无错误提示 但 报错:
    java: XXX/web/util/HttpPoolingUtil.java:50: 找不到符号
    符号: 方法 loadTrustMaterial(,org.apache.http.conn.ssl.TrustSelfSignedStrategy)
    位置: 类 org.apache.http.ssl.SSLContextBuilder

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 8月4日
  • 已采纳回答 7月27日
  • 创建了问题 7月26日

悬赏问题

  • ¥15 streamingtool
  • ¥15 MATLAB图像问题
  • ¥20 树莓派5做人脸情感识别与反馈系统
  • ¥15 selenium 控制 chrome-for-testing 在 Linux 环境下报错 SessionNotCreatedException
  • ¥15 使用pyodbc操作SQL数据库
  • ¥15 MATLAB实现下列
  • ¥30 mininet可视化打不开.mn文件
  • ¥50 C# 全屏打开Edge浏览器
  • ¥80 WEBPACK性能优化
  • ¥30 python拟合回归分析