sun.misc.BASE64Decoder和sun.misc.BASE64Encoder不可用【解决办法】

sun.misc.BASE64Decoder和sun.misc.BASE64Encoder不可用【解决办法】


叮嘟!这里是小啊呜的学习课程资料整理。好记性不如烂笔头,今天也是努力进步的一天。一起加油进阶吧!
在这里插入图片描述

一、问题描述

最近项目实验发现导入工具程序后项目有错,查看发现sun.misc.BASE64Decoder和sun.misc.BASE64Encoder不可用,找不到相应的类。

原因分析

冲浪后发现JDK中的lib\tools.jar和JRE中的lib\rt.jar已从Java SE 9中删除,也就是1.8版本后的jdk已经不再支持sun.misc.BASE64Decoder和sun.misc.BASE64Encoder。
这些JAR中可用的类和资源现在以文件中的内部格式存储在lib目录的命名模块中。 可以使用称为jrt的新方案来从运行时映像检索这些类和资源。 依靠这些JAR位置的应用程序将不再工作。

二、解决办法

1、替换JDK公共API

从JDK 1.8开始,就提供了java.util.Base64.Decoderjava.util.Base64.Encoder的JDK公共API,可代替sun.misc.BASE64Decoder和sun.misc.BASE64Encoder的JDK内部API。

java.util.Base64.Decoder的官网API:

https://docs.oracle.com/javase/9/docs/api/java/util/Base64.Decoder.html

java.util.Base64.Encoder的官网API:

https://docs.oracle.com/javase/9/docs/api/java/util/Base64.Encoder.html

2、切换JDK版本

将JDK更换到1.8版本,即可正常使用。

在这里插入图片描述

喏~
小啊呜就是使用了这个方法,完美解决没有报错呀!

在这里插入图片描述

Ending!
更多课程知识学习记录随后再来吧!

就酱,嘎啦!

在这里插入图片描述

注:
人生在勤,不索何获。

猜你喜欢

转载自blog.csdn.net/qq_43543789/article/details/109146468
今日推荐