[发明专利]一种源代码远程查看方法和装置在审
申请号: | 202010469941.5 | 申请日: | 2020-05-28 |
公开(公告)号: | CN111625378A | 公开(公告)日: | 2020-09-04 |
发明(设计)人: | 刘正阳 | 申请(专利权)人: | 北京达佳互联信息技术有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54;G06F8/53 |
代理公司: | 北京博思佳知识产权代理有限公司 11415 | 代理人: | 陈蕾 |
地址: | 100085 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 源代码 远程 查看 方法 装置 | ||
本公开实施例提供了一种源代码远程查看方法、装置、电子设备及存储介质。预先编写包含端口启动逻辑和反编译工具调用逻辑的代理程序,将所述代理程序与目标进程之间建立通信通道,以通过该通信通道获取目标进程的类信息。再通过代理程序启动的指定端口接收远程设备用户选定的目标进程的目标类,调用反编译工具获取目标类的源代码,最后通过指定端口将源代码发送给远程设备以便于远程查看。本方案可支持用户在远程设备选定目标类,并自动返回对应的源代码到该远程设备上进行查看,操作简便耗时较短。
技术领域
本公开涉计算机技术领域,尤其涉及一种源代码远程查看方法、装置、电子设备及存储介质。
背景技术
在修改完代码、把服务对应的新代码部署到线上设备后,开发人员有时需要确认设备上当前运行的服务是否已经使用了对应的正确代码。
但部署完成的服务使用的是编译后的字节码,其对应的源代码已经不可查看。在传统方案中,通常在打包部署时把源代码也共同打包进去,在需要确认某个服务的源代码时,使用线上设备解压对应的项目包并查看源代码。
传统方案增加了打包的操作成本,占用了线上设备更多的内存资源。整个源代码的查看过程也比较复杂,需要开发者了解压缩的项目包在线上设备中的存放路径,查看时需要将项目包解压到某个文件夹,然后进入到这个文件夹根据项目包名进行查看,操作复杂且耗时较久。
发明内容
针对上述技术问题,本公开实施例提供一种源代码远程查看方法,技术方案如下:
根据本公开实施例的第一方面,提供一种源代码远程查看方法,所述方法在目标进程所运行的目标设备中配置代理程序,所述方法包括:
代理程序与目标进程之间建立通信通道后,启动目标设备的指定端口;
通过所述指定端口接收用户通过远程设备选定的目标进程中的目标类,并通过所述通信通道获取所述目标类对应的字节码;
调用目标设备中预先配置的反编译工具对所述字节码进行反编译操作,以获取所述字节码对应的源代码;
将所述源代码通过所述指定端口发送给远程设备进行展示。
可选的,所述代理程序为Java agent程序,所述代理程序与目标进程之间建立通信通道,包括:
利用Java虚拟机提供的Attach功能,将所述Java agent程序与目标进程建立通信通道。
可选的,所述目标设备的指定端口为目标设备的HTTP端口,所述通过所述指定端口接收用户通过远程设备选定的目标进程中的目标类,包括:
通过HTTP端口接收用户在WEB页面输入的目标类的查看指令,所述目标类的查看指令中至少包括所述目标类的类标识、所述目标设备的IP地址以及所述HTTP端口的端口号。
可选的,所述目标设备的指定端口为目标设备的HTTP端口,所述将所述源代码通过指定端口发送给远程设备进行展示,包括:
通过HTTP端口将所述源代码传输到远程设备的WEB页面,通过所述Web页面展示所述源代码。
可选的,所述启动目标设备的指定端口后,还包括:
确定所述目标进程中已加载的类;
基于预定的展示策略,通过指定端口在远程设备的WEB页面上展示所述已加载的类,以使用户在其中选定待查看的目标类,所述预定的展示策略至少包括:展示指定类型的已加载的类,或按照指定顺序展示已加载的类。
根据本公开实施例的第二方面,提供一种源代码远程查看装置,所述装置在目标进程所运行的目标设备中配置代理程序,所述装置包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京达佳互联信息技术有限公司,未经北京达佳互联信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010469941.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种程序状态检测方法和装置
- 下一篇:信息处理方法、装置、电子设备及存储介质