升级jdk版本之后会发现,原来使用的一些加密方法开始报错了。
解决方法如下,删除原方法中引入的包,将原方法中的
BASE64Encoder encoder = new BASE64Encoder();
String imagestr = encoder.encode(captcha);
BASE64Decoder decoder = new BASE64Decoder();
byte[] bytes = decoder.decodeBuffer(imagestr);
替换成如下方法即可
import java.util.Base64.Encoder;
import java.util.Base64.Decoder; //加解密的包
Encoder encoder = Base64.getEncoder();
String result = encoder.encodeToString(byteArray);
Decoder decoder = Base64.getDecoder();
byte[] result = decoder.decode(str);
原因是/lib/tool.jar和/lib/rt.jar已经从Java SE 9中删除。
原文链接:https://blog.csdn.net/Cha0DD/article/details/87794268