0


升级到jdk1.8后 sun/io/CharToByteConverter错误及处理

最近在忙单位升级碰到一些问题记录下: 把原来老项目jdk1.7升级到jdk1.8/Tomcat9,但是升级到jdk1.8以后,编译出现java.lang.NoClassDefFoundError: sun/io/CharToByteConverter错误,经查询,jdk1.8版本中已经从sun.io中去除CharToByteConverter等代码。

解决办法:

  1. 从jdk1.7源码中(sun.io中)找来了相关java文件,放到项目中 sun.io(跟源码目录结构一样)文件目录下即可。
  2. 编码:UTF-8

需要的文件:

up-f8a9be19218c501a203e96b7d388946b5b4.png

  • ByteToCharConverter.java
  • ByteToCharUTF8.java
  • CharacterEncoding.java
  • CharToByteConverter.java (可不用)
  • CharToByteUTF8.java(可不用)
  • ConversionBufferFullException.java
  • Converters.java
  • UnknownCharacterException.java

PS:如果有其它编码格式把对应编码源码加入即可。

如果不方便找源码可以从jdk1.7的rt.jar反编译代码:

标签: 反编译 java jdk

本文转载自: https://blog.csdn.net/ximaiyao1984/article/details/120286465
版权归原作者 讓丄帝愛伱 所有, 如有侵权,请联系我们删除。

“升级到jdk1.8后 sun/io/CharToByteConverter错误及处理”的评论:

还没有评论