首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >包sun.net.www.protocol.https不可见

包sun.net.www.protocol.https不可见
EN

Stack Overflow用户
提问于 2021-09-28 07:49:54
回答 1查看 143关注 0票数 0

我正在将java应用程序从java-8迁移到java-11,但遇到了sun.net.www.protocol.https不可见的问题。我的代码类似于URL url = new URL(null,strServletUrl,new sun.net.www.protocol.https.Handler());

那么如何在java-11中获取https处理程序,因为它在基包中的类中不可见。

EN

回答 1

Stack Overflow用户

发布于 2021-09-28 10:57:43

的最佳翻译

代码语言:javascript
复制
 URL url = new URL(null, strServletUrl, 
                   new sun.net.www.protocol.https.Handler());

是:

代码语言:javascript
复制
 URL url = new URL(strServletUrl);

除非发生了一些奇怪的事情,否则显式实例化内置协议的标准流协议处理程序是没有意义的。只需让JVM以标准方式查找处理程序即可。这样你的代码就不需要显式地依赖于这个(内部)类了。

如果发生了一些奇怪的>is<问题,那么您现在可以使用--add-exports来解决这个问题。但是,随着对内部API的访问逐渐关闭,这很容易在较新版本的Java中停止工作。

所以我的建议是想出别的办法...任何需要这个的东西。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69357732

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档