[发明专利]基于Eclipse的其他软件调用方法、系统及存储介质在审
申请号: | 201710866556.2 | 申请日: | 2017-09-22 |
公开(公告)号: | CN107643947A | 公开(公告)日: | 2018-01-30 |
发明(设计)人: | 吴翔虎;曲明成;陶永超;刘全胜 | 申请(专利权)人: | 深圳航天科技创新研究院 |
主分类号: | G06F9/48 | 分类号: | G06F9/48 |
代理公司: | 深圳市科吉华烽知识产权事务所(普通合伙)44248 | 代理人: | 孙伟 |
地址: | 518000 广东省*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 eclipse 其他 软件 调用 方法 系统 存储 介质 | ||
1.一种基于Eclipse的其他软件调用方法,其特征在于,包括以下步骤:
S1:通过ProcessBuilder()函数新建一个builder对象,参数为要执行的其他可执行程序的绝对路径;
S2:通过builder.start()执行该其他程序,获得一个Process进程对象process,process即为打开该其他程序后的进程;
S3:通过process.getOutputStream()获得该进程的输入流,通过该输入流执行相应的指令;
S4:使用WorkspaceJob创建一个新的线程,用来监听process进程的输出流,通过belongsTo()将该Job归属到一个集合中,之后通过schedule()将该线程添加到等候线程中,等待操作系统执行该Job;
S5:当监听线程开始执行之后,监听其他可执行程序的输出流,如果输出流不为空则输出到自定义的console中;如果输出流为空,则关闭输出流,同时刷新工程所在的工作区间。
2.根据权利要求1所述的基于Eclipse的其他软件调用方法,其特征在于,在步骤S4中,所述多线程选择的是Eclipse本身的Job机制,使用的是Job机制的扩展WorkspaceJob。
3.根据权利要求1所述的基于Eclipse的其他软件调用方法,其特征在于,在步骤S5中,所述其他可执行程序的输出流有两个结果输出流,一个是标准输出流,输出的是正确的执行结果;一个是错误输出流,输出的是错误的执行结果。
4.根据权利要求3所述的基于Eclipse的其他软件调用方法,其特征在于,在步骤S5中,使用一个while循环实现对其他可执行程序的输出流监听,循环的终止条件是标准输出流和错误输出流均为空。
5.根据权利要求4所述的基于Eclipse的其他软件调用方法,其特征在于,所述对其他可执行程序的输出流监听的判断准则具体包括:
(1)当标准输出流有结果时,以白色颜色输出到自定义的console中;
(2)当错误输出流有结果时,以红色颜色输出到自定义的console中;
(3)若果标准输出流和错误输出流都为空,则关闭两个输出流,同时刷新工程所在的工作区间。
6.根据权利要求1-5中任一项所述的基于Eclipse的其他软件调用方法,其特征在于,所述方法还包括:
设计基于Eclipse终止无效进程的函数对后台进程进行统一的终止管理。
7.根据权利要求6所述的基于Eclipse的其他软件调用方法,其特征在于,基于Eclipse终止无效进程的函数实现包括以下步骤:
(1)获取IJobManager对象,通过IJobManager.cancel(MY_JOB_FAMILY)取消该系列下的所有job;
(2)调用windows的cmd.exe执行Tasklist指令,获取所有的正在运行的进程信息列表;
(3)遍历此进程信息列表,如果遍历到的进程是需要终止的进程,则截取获得该进程的PID,通过调用windows的cmd.exe执行“taskkill/F/PID pid”指令终止该进程;
(4)遍历完成之后终止cmd.exe进程。
8.一种基于Eclipse的其他软件调用系统,其特征在于,所述系统包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1-7中任一项所述的方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-7中任一项所述的方法的步骤。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳航天科技创新研究院,未经深圳航天科技创新研究院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710866556.2/1.html,转载请声明来源钻瓜专利网。