一种基于JPDA的面向实施人员的软件运行控制方法技术

技术编号:3773785 阅读:195 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供了一种基于JPDA的面向实施人员的软件运行控制方法,该方法基于JPDA技术,面向基于Java开发的软件。由该方法实现的java工具可以有两种运行方式,一种方式是基于java开发的软件已经启动运行,该Java工具通过Socket连接该软件,然后进行软件运行控制;另一种方式是在该Java工具中执行软件的启动。通过该方法开发的Java工具,还提供一个面向软件开发人员的配置接口,由软件开发人员定义软件的可选断点、可选状态以及对这些断点和状态的说明,实施人员根据这些说明选择设定断点,运行该Java工具,监控软件的运行状态。软件运行过程中的所有输出也可以通过该Java工具由实施人员选择性地查看。

【技术实现步骤摘要】

本专利技术涉及基于Java平台调试框架(JPDA)来开发Java调试程序的方法,该 调试程序提供给实施人员而不是软件开发人员使用。
技术介绍
软件维护在整个软件生命周期预算中占很大比例是公认的。它占软件生命周期 费用的70%是常见的(而软件开发占30%)。按一般的经验法则,软件维护预算的 分配是60%用于功能增强;适应新环境和纠错各占20%。所以对于软件实施人员 来讲,软件实施是一项非常大的工作。再者,目前高性能服务器相关的软件产品 都是由实施人员现场安装,由软件开发人员提供远程技术支持。而实施人员对于 软件本身并不了解,遇到的错误自己并不能及时解决,也不能很好地定位问题的 所在。目前主要的解决办法就是软件开发人员事先在软件内部设定一些标志性输出, 这种方式的缺点是实施人员能够获得的信息量是固定的,而且在很多情况是不 够的; 一些软件如Web项目,实施人员需要深入到Web服务器内部才能获得其输 出;实施人员只能被动地观察软件的运行状态,而不能控制软件的运行,如暂停 执行。鉴于此,本专利技术提供了一种基于JPDA的面向实施人员的软件运行控制方法。 由该方法实现的Java工具可以控制软件的运行,监控软件的运行状态,同时,软 件运行过程中的所有标志性输出也可以通过该Java工具由实施人员选择性地直观 地査看。
技术实现思路
本专利技术的目的是提供一种基于JPDA的面向实施人员的软件运行控制方法。 该方法是利用Java调试接口 (JDI)实现一个Java工具,该Java工具通过 配置文件初始化软件的断点和状态信息。接下来,该Java工具启动软件的执行或 者通过Socket连接到已启动的软件,并获得对软件的JVM的引用。通过该引用设 定软件的断点和状态信息。接下来,该Java工具通过其提供的事件监听机制,监 听断点事件,显示软件的状态信息,并请求用户执行操作(继续或暂停)。 该方法可以分为以下步骤1)修改配置文件,定义该程序的运行方式,选择启动软件的执行还是通过Socket连接,如果是Socket连接,需要目的软件的IP和端口;定义可选的断点 以及断点的说明,软件的运行状态以及状态的说明。2) 启动该Java工具,获得对目的软件的JVM的引用。3) 提供实施人员选择设定的断点,并通过该JVM引用设定这些断点以及软件 的状态。4) 该Java工具将一直运行,显示软件的输出,直到一个已设定的断点暂停 执行,显示软件的状态信息,并请求用户操作。本专利技术的有益效果是通过该方法开发的Java工具,提供一个面向软件开发 人员的配置接口,由软件开发人员定义软件的可选断点、可选状态以及对这些断 点和状态的说明,实施人员根据这些说明选择设定断点,运行该Java工具,监控 软件的运行状态。软件运行过程中的所有输出也可以通过该Java工具由实施人员 选择性地查看、控制软件的运行,监控软件的运行状态,以做到帮助实施人员及 时、准确地定位问题的目的。具体实施例方式本专利技术的方法是利用Java调试接口 JDI实现一个Java工具,该Java工具通 过配置文件初始化软件的断点和状态信息,接下来,该Java工具启动软件的执行 或者通过Socket连接到己启动的软件,并获得对软件的JVM的引用,通过该引用 设定软件的断点和状态信息,接下来,该Java工具通过其提供的事件监听机制, 监听断点事件,显示软件的状态信息,并请求用户执行操作包括继续或暂停;该方法分为以下步骤-1) 修改配置文件,定义该程序的运行方式,选择启动软件的执行还是通过 Socket连接,是Socket连接,需要目的软件的IP和端口 ;定义可选的断点以及 断点的说明软件的运行状态以及状态的说明;2) 启^该Java工具,获得对目的软件的JVM的引用;3) 提供实施人员选择设定的断点,并通过该JVM引用设定这些断点以及软件 的状态;4) 该Java工具将一直运行,显示软件的输出,直到一个已设定的断点暂停执 行,显示软件的状态信息,并请求用户操作。本专利技术的方法包括两种运行方式, 一种是预先启动软件,该Java工具通过 Socket连接该软件;另一种是由该Java工具中启动软件的运行,在Java工具中 设置一个面向软件开发人员的配置接口 ,由软件开发人员定义软件的可选断点、 可选状态以及对这些断点和状态的说明,实施人员根据这些说明选择设定断点,运行该Java工具,监控软件的运行状态,软件运行过程中的所有输出通过该Java 工具由实施人员选择性地查看。Java工具通过本地和远程两种方式控制软件的运行,尤其对于集群系统,在 局域网内通过单一映像的方式对多台服务器进行控制,网络条件允许,由软件开 发人员进行远程协助以避免由图形协助方式所带来的网速问题。Java工具允许实施人员选择设定断点,监控软件的运行状态,Java工具将一 直运行直到一个已设定的断点,此时实施人员通过监控软件的运行状态,选择退 出或者继续运行,Java工具将一直运行直到下一个断点。软件运行过程中的所有输出通过Java工具由实施人员选择性地查看,做到了对 软件本身提供的静态输出包括正确信息和错误信息的支持。实施例该方法分为以下步骤第一步〃定义Java工具的运行方式,false表示由该程序启动软件的运行 socket: false〃Socket方式下,目的软件的IP socket—ip: 10.152.11.61〃Scoket方式下,目的软件的端口号 scoket一port: 37580〃可选&断点以及说明breakpoint—method—1: com. langchao. Classl一methodl des—method—l:Classl的methodl方法 breakpoint_method_2: com. langchao. Classl_method2 des—method—2: Class2的method2方法 〃^件的状i以及说明breakpoint_field—1: com. langchao. Classl—fieldldes—field—1: Classl的filedl状态帛二步选择"由该Java工具启动软件的运行"的方式。 LaunchingCormector connector = null; 〃对目的软件的JVM的引用 VirtualMachine vm = null;〃首先要获得"由该Java工具启动软件的执行"所需要的连接 List〈Connector> list Bootstrap. pa'/^〃a7勸cAz'/7e胞/7a^eH). allConnectors (): Iterator<Connector> it = list, iterator(); while (it. hasNext())Connector obj = (Connector)it. next();if (obj. name (). equals ("com. sun. jdi. CommandLineLaunch"))connector = (LaunchingConnector)obj: break;〃设置软件的启动类Map〈String, Connector. Argument> ar本文档来自技高网...

【技术保护点】
一种基于JPDA的面向实施人员的软件运行控制方法,其特征在于,该方法是利用Java调试接口JDI实现一个Java工具,该Java工具通过配置文件初始化软件的断点和状态信息,接下来,该Java工具启动软件的执行或者通过Socket连接到已启动的软件,并获得对软件的JVM的引用,通过该引用设定软件的断点和状态信息,接下来,该Java工具通过其提供的事件监听机制,监听断点事件,显示软件的状态信息,并请求用户执行操作包括继续或暂停;具体步骤如下: (1、)修改配置文件,定义该程 序的运行方式,选择启动软件的执行还是通过Socket连接,是Socket连接,需要目的软件的IP和端口;定义可选的断点以及断点的说明,软件的运行状态以及状态的说明; (2、)启动该Java工具,获得对目的软件的JVM的引用; ( 3、)提供实施人员选择设定的断点,并通过该JVM引用设定这些断点以及软件的状态; (4、)该Java工具将一直运行,显示软件的输出,直到一个已设定的断点暂停执行,显示软件的状态信息,并请求用户操作。

【技术特征摘要】

【专利技术属性】
技术研发人员:李刚魏健邸双朋
申请(专利权)人:浪潮电子信息产业股份有限公司
类型:发明
国别省市:88[中国|济南]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1