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及以上这个路径下就没有这个模块了,
所以就升级失败了。。。此路不通