[发明专利]一种JAR包和WAR包的兼容性检查方法和系统在审
申请号: | 202210334705.1 | 申请日: | 2022-03-31 |
公开(公告)号: | CN114780136A | 公开(公告)日: | 2022-07-22 |
发明(设计)人: | 金明珠;许凌超;袁映雪;熊浩然 | 申请(专利权)人: | 中银金融科技有限公司 |
主分类号: | G06F8/71 | 分类号: | G06F8/71;G06F8/41 |
代理公司: | 上海科盛知识产权代理有限公司 31225 | 代理人: | 赵继明 |
地址: | 200120 上海市浦东新区中国(*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 jar war 兼容性 检查 方法 系统 | ||
本发明涉及一种JAR包和WAR包的兼容性检查方法和系统,方法包括以下步骤:获取编译好的包文件,该包文件包括JAR包和WAR包;检查编译好的包文件中所有的class类清单,并对包文件进行内部递归检查;根据class类清单中每个class类的头文件获取编译版本号;判断编译版本号是否与预设的标准版本号一致,若一致,则该包文件的版本满足兼容性,否则,不满足兼容性,将对应的包文件纳入预设的兼容性不一致清单。与现有技术相比,本发明通过检查头文件的方法检查整改包确保兼容性,可以避免很多难以察觉的兼容性问题。
技术领域
本发明涉及包文件处理技术领域,尤其是涉及一种JAR包和WAR包的兼容性检查方法和系统。
背景技术
因为项目内引用了很多公司内部的包的功能和其他的包,现成包编译的JDK版本可能与项目工程打包编译的JDK版本不一致,虽然大多数情况下运行不会有问题,但是容易会导致一些其他的异常问题。
现有方案中,虽然java会检查虚拟机版本,并判定是否接受此文件,但是一般只遵循了向下兼容性,容易发生异常问题。
发明内容
本发明的目的就是为了克服上述现有技术存在现成包编译的JDK版本可能与项目工程打包编译的JDK版本不一致,导致异常的缺陷而提供一种JAR包和WAR包的兼容性检查方法和系统。
本发明的目的可以通过以下技术方案来实现:
一种JAR包和WAR包的兼容性检查方法,包括以下步骤:
获取编译好的包文件,该包文件包括JAR包和WAR包;
检查编译好的包文件中所有的class类清单;
根据class类清单中每个class类的头文件获取编译版本号;
判断所述编译版本号是否与预设的标准版本号一致,若一致,则该包文件的版本满足兼容性,否则不满足兼容性。
进一步地,所述方法还包括对所述包文件进行内部递归检查,获取所有的class类清单。
进一步地,所述编译版本号为class类头文件中的主版本号。
进一步地,所述主版本号为class类头文件中的第7和第8个字段。
进一步地,若编译版本号与预设的标准版本号不一致,则将对应的包文件纳入预设的兼容性不一致清单。
本发明还提供一种JAR包和WAR包的兼容性检查系统,包括:
class清单获取模块,被配置为:获取编译好的包文件,该包文件包括JAR包和WAR包;检查编译好的包文件中所有的class类清单;
检查模块,被配置为:根据class类清单中每个class类的头文件获取编译版本号;
检查报告生成模块,被配置为:判断所述编译版本号是否与预设的标准版本号一致,若一致,则该包文件的版本满足兼容性,否则不满足兼容性。
进一步地,所述class清单获取模块还被配置为:对所述包文件进行内部递归检查,获取所有的class类清单。
进一步地,所述编译版本号为class类头文件中的主版本号。
进一步地,所述主版本号为class类头文件中的第7和第8个字段。
进一步地,所述检查报告生成模块还被配置为:若编译版本号与预设的标准版本号不一致,则将对应的包文件纳入预设的兼容性不一致清单。
与现有技术相比,本发明具有以下优点:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中银金融科技有限公司,未经中银金融科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210334705.1/2.html,转载请声明来源钻瓜专利网。