一、升级原因
在对接微信第三方服务商开发时,我们一直解析不出来微信给我们的加密参数,开发找了好久才找到是因为我们jdk版本的问题,我们目前用的jdk1.8.0_144,解密不了。我们要对jdk进行升级,查看了网上的升级方法
二、升级过程
- 测试环境进行升级
下载jdk版本,百度了几个都是垃圾
这种就不要点了,都是坑,还是在oracle官网下载靠谱,就是要注册一个账号,默认进去都是最新版本
历史版本的链接:https://www.oracle.com/java/technologies/javase/javase8-archive-downloads.html
直接下载版本就可以了,我下载的是jdk-8u181-linux-x64.tar.gz
查看Java的安装目录:which java
把下载的jdk压缩包上传到服务器,解压
tar -zxf jdk-8u181-linux-x64.tar.gz
update-alternatives --install /usr/local/jre/bin/java java /usr/local/java8/jdk1.8.0_181/jre/bin/java 1
update-alternatives --config java
升级成功。
解密还需要修改一下
打开这个配置
测试服可以解密微信加密的数据了
以上实在测试服的升级过程,到线上就GG了
用上面的方法一直不成功
最后看了一下update-alternatives,原理就是软链接管理,恍然大悟,我直接建个软连接不就好了吗
which java
找到位置
搞定
实际我们最简单的方法就是直接建立软连接指向新的jdk版本就好了。