shiro-jar-1.4版本升级到1.6版本问题探讨

最近公司领导用阿里云的工具扫描服务器上的项目,发现很多的高危漏洞;

其中有一个是shiro-jar-1.4版本存在高风险漏洞,所以赶紧解决它:

项目情况:这个项目是公司以前的旧项目,没有源代码,只有服务器上面的 war 包文件。

开始干活:

在官网下载了shiro-1.6的相关jar包文件:

然后把项目服务停掉,把shiro-1.4的jar 包删除了,上传1.6的版本jar 包,重启服务器;

呃,启动正常访问不了,查看错误日志:

提示项目jdk的版本不一致!!!!!!

shiro-1.4的jar  ,Build-Jdk: 1.8.0_77

shiro-1.6的jar, Build-Jdk: 11.0.7

检查jar包shiro-1.4是jdk1.8编译的,shiro-1.6是jdk11编译的;

所以撤回项目还原了。

决定另外搭建一套环境,配置服务器的jdk为11 版本。

兴奋的启动。。。

呃,结果有出错了:

java.lang.NoClassDefFoundError: javax/xml/soap/SOAPException;

查了很多资料找到问题原因:

jdk9 以下的版本包含:javax.xml.soap 这个模块;

jdk9及以上这个路径下就没有这个模块了,

所以就升级失败了。。。此路不通