升級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
