[发明专利]一种JAVA应用程序健壮性的检测方法和装置有效
申请号: | 201310552552.9 | 申请日: | 2013-11-08 |
公开(公告)号: | CN103559132A | 公开(公告)日: | 2014-02-05 |
发明(设计)人: | 陈福洪;彭定邦;张银全 | 申请(专利权)人: | 北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京德琦知识产权代理有限公司 11018 | 代理人: | 张玉波;宋志强 |
地址: | 100080 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 java 应用程序 健壮性 检测 方法 装置 | ||
技术领域
本申请涉及信息处理技术领域,尤其涉及一种JAVA应用程序健壮性的检测方法和装置。
背景技术
JAVA是一种可以撰写跨平台应用软件的面向对象的程序设计语言。JAVA应用程序常常依赖于多个JAR包,JAR包中通常包括java class文件,所述java class文件主要用于在平台无关性和网络移动性方面使Java应用程序更适合网络,它在平台无关性方面的任务是:为Java应用程序提供独立于底层主机平台的二进制形式的服务。
JAVA虚拟机(Java Virtual Machine,JVM)在加载JAVA应用程序时,JVM根据java class文件的属性信息判断java class文件是否已经被加载过了,如果JVM发现一个java class文件已经加载过了,则后面如果出现相同的java class文件,JVM就不会再被加载了。其中,所述属性信息通常包括java class文件的文件名、签名和路径信息。
有时,JAVA应用程序依赖于多个属性信息相同但是内在逻辑不同的java class文件,由于JVM在加载JAVA应用程序时根据java class文件的属性信息判断该java class文件是否已经被加载过了,如果已经被加载过了,就不再加载,因此,将导致JAVA应用程序在运行时出现诸如“没有找到这样的类(java.lang.NoClassDefFoundError)”或“没有这样的方法(java.lang.NoSuchMethodException)”的错误,并且,由于JAVA应用程序中各个java class文件的加载顺序只有在实际运行JAVA应用程序时才能够确定,因此,这类错误只有在JAVA应用程序运行时才能够被发现。
可见,在现有的JVM类加载机制下,JAVA应用程序的健壮性较差,并且,JAVA应用程序的健壮性如何只有在实际运行时才能够被发现,不利于提高JAVA应用程序的健壮性,导致基于JAVA应用程序的系统的稳定性较差。
发明内容
有鉴于此,本发明提供了一种JAVA应用程序健壮性的检测方法和装置,能够在实际运行之前就检测出JAVA应用程序的健壮性,从而有利于提高JAVA应用程序的健壮性和基于JAVA应用程序的系统的稳定性。
一种JAVA应用程序健壮性的检测方法,该方法包括:
扫描待检测的JAVA应用程序依赖的每个jar包所包含的java class文件属性信息,根据扫描结果记录每个jar包所包含的java class文件列表;
将每个jar包所包含的java class文件列表分别与其他jar包所包含的java class文件列表进行比较,根据每次比较的结果,确定出被比较的两个jar包中均包含的属性信息相同的java class文件;
根据所述被比较的两个jar包中均包含的属性信息相同的java class文件,输出所述JAVA应用程序健壮性的检测结果。
一种JAVA应用程序健壮性的检测装置,该装置包括扫描模块、检测模块和输出模块;
所述扫描模块,用于扫描待检测的JAVA应用程序依赖的每个jar包所包含的java class文件属性信息,根据扫描结果记录每个jar包所包含的java class文件列表;
所述检测模块,用于将每个jar包所包含的java class文件列表分别与其他jar包所包含的java class文件列表进行比较,根据每次比较的结果,确定出被比较的两个jar包中均包含的属性信息相同的java class文件;
所述输出模块,用于根据所述被比较的两个jar包中均包含的属性信息相同的java class文件,输出所述JAVA应用程序健壮性的检测结果。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司,未经北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310552552.9/2.html,转载请声明来源钻瓜专利网。