[发明专利]应用程序调试方法和装置有效
申请号: | 201310714540.1 | 申请日: | 2013-12-20 |
公开(公告)号: | CN103699485B | 公开(公告)日: | 2018-04-10 |
发明(设计)人: | 高荣玉;李家凤;刘继云 | 申请(专利权)人: | 金蝶软件(中国)有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F9/455 |
代理公司: | 广州华进联合专利商标代理有限公司44224 | 代理人: | 何平 |
地址: | 518000 广东省深圳市南山区*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 应用程序 调试 方法 装置 | ||
技术领域
本发明涉及程序调试技术,特别是涉及一种应用程序调试方法和装置。
背景技术
应用程序运行过程出现各种bug(漏洞)的情况时有发生,因此,常常需要一定的调试器对应用程序进行调试,以获知应用程序中存在的bug,进而对其进行不断的修复。
传统的调试器大都为界面化调试器,用于提供一些标准的调试功能,调试功能较为齐全,足够对应用程序完成各种调试。但是,在这些传统的调试器对应用程序进行调试的过程中必须有源代码的支持。
然而,当应用程序运行于某一远程环境中,因代码受控,是无法将代码发送到这一远程环境中的,因此,将造成了传统的调试器无法在没有源代码支持的情况下对应用程序进行调试。
发明内容
基于此,有必要针对传统的调试器无法在没有源代码支持的情况下对应用程序进行调试的技术问题,提供一种能在没有源代码支持的情况下对应用程序进行调试的应用程序调试方法。
此外,还有必要提供一种能在没有源代码支持的情况下对应用程序进行调试的应用程序调试装置。
一种应用程序调试方法,包括如下步骤:
通过调用调试接口与目标虚拟机建立连接,目标应用程序运行于所述目标虚拟机中;
将调试事件请求注册至所述目标虚拟机,所述调试事件请求是根据所述目标应用程序中的关注点封装得到的;
主动向所述目标虚拟机获取事件队列,以通过所述事件队列输出所述调试事件请求所对应的调试信息。
在其中一个实施例中,所述通过调用调试接口与目标虚拟机建立连接的步骤包括:
获取输入的目标虚拟机对应的地址和调试端口,以生成调试命令;
通过生成的调试命令触发调用调试接口与目标虚拟机建立连接。
在其中一个实施例中,所述将调试事件请求注册至所述目标虚拟机的步骤包括:
调用调试事件请求管理器,并通过所述调试事件请求管理器将预先封装的调试事件请求注册至所述目标虚拟机中。
在其中一个实施例中,所述主动向所述目标虚拟机获取事件队列,以通过所述事件队列输出所述调试事件请求所对应的调试信息的步骤之前,所述方法还包括:
所述目标虚拟机判断当前触发的事件是否与所述注册的事件契合,若是,则
将对应的事件实例放入所述事件队列。
在其中一个实施例中,所述主动向所述目标虚拟机获取事件队列,以通过所述事件队列输出所述调试事件请求所对应的调试信息的步骤包括:
通过所述调试接口调用事件队列接口,以通过所述事件队列接口得到事件队列,并从所述事件队列中取出所述调试事件请求对应的事件实例;
由所述事件实例得到调试信息,并输出所述调试信息。
一种应用程序调试装置,包括:
连接模块,用于通过调用调试接口与目标虚拟机建立连接,目标应用程序运行于所述目标虚拟机中;
事件注册模块,用于将调试事件请求注册至所述目标虚拟机,所述调试事件请求是根据所述目标应用程序中的关注点封装得到的;
处理模块,用于主动向所述目标虚拟机获取事件队列,以通过所述事件队列输出所述调试事件请求所对应的调试信息。
在其中一个实施例中,所述连接模块包括:
命令生成单元,用于获取输入的目标虚拟机对应的地址和调试端口,以生成调试命令;
连接建立单元,用于通过生成的调试命令触发调用调试接口与目标虚拟机建立连接。
在其中一个实施例中,所述事件注册模块还用于调用调试事件请求管理器,并通过调试事件请求管理器将预先封装的调试事件请求注册至所述目标虚拟机中。
在其中一个实施例中,所述目标虚拟机用于判断当前触发的事件是否与所述注册的事件契合,若是,则将所述对应的事件实例放入所述事件队列。
在其中一个实施例中,所述处理模块包括:
实例获取单元,用于通过所述调试接口调用事件队列接口,以通过所述事件队列接口得到事件队列,并从所述事件队列中取出调试事件请求对应的事件实例;
输出单元,用于由所述事件实例得到调试信息,并输出所述调试信息。
上述应用程序调试方法和装置,通过调用调试接口与目标虚拟机建立连接,该目标应用程序便运行于这一目标虚拟机中,并将调试事件请求注册至目标虚拟机,进而主动向目标虚拟机获取事件队列,以通过事件队列输出调试事件请求所对应的调试信息,并输出调试信息,由于调试事件请求是根据目标应用程序中的关注点封装得到的,因此在没有源代码支持的情况下实现了目标应用程序的调试。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于金蝶软件(中国)有限公司,未经金蝶软件(中国)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310714540.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:转动惯量可调的惯性飞轮装置
- 下一篇:一种悬挂式污物收纳装置