[发明专利]一种代码编译方法、装置、电子设备及存储介质有效
申请号: | 202110899136.0 | 申请日: | 2021-08-06 |
公开(公告)号: | CN113342355B | 公开(公告)日: | 2021-12-07 |
发明(设计)人: | 赵硕 | 申请(专利权)人: | 北京达佳互联信息技术有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F8/71 |
代理公司: | 广州华进联合专利商标代理有限公司 44224 | 代理人: | 周清华 |
地址: | 100085 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 代码 编译 方法 装置 电子设备 存储 介质 | ||
本公开关于一种代码编译方法、装置、电子设备及存储介质,包括:响应于预设的编译命令,根据预先生成的第一配置文件,获取与主代码仓存在关联关系的多个子代码仓所包含的子代码;第一配置文件用于记录在历史编译过程中确定出的与主代码仓存在关联关系的子代码仓的信息;将子代码添加到主代码仓,以在编译过程中,将子代码对应的中间编译结果转换为源码,并通过主代码仓对转换得到的源码进行编译打包,生成对应的运行文件。在本公开中,在客户端应用程序的运行文件编译过程中,根据之前编译过程得到的第一配置文件可获取到关联的子代码并添加到主代码仓中,实现了子代码的自动添加和修改,减少因手动修改而出现的代码处理错误,有效提高编译效率。
技术领域
本公开涉及代码编译领域,尤其涉及一种代码编译方法、装置、电子设备 及存储介质。
背景技术
为便于代码开发和维护,可以对终端应用代码进行模块拆分,拆分后的代码分别由多个独立的子代码仓分别进行处理,得到多个中间编译产物,并集成到主代码仓中,编译出最终的应用程序。但代码调试时的便捷性有所下降。
为了减少代码编译调试的不便,可以借助脚本工具提供的接口,将子代码仓对应的代码添加到主代码仓中,脚本工具在运行过程中可以辅助主代码仓将子代码仓产生的中间编译产物转换成源码,进而可以基于该源码进行编译和调试。
然而,在借助脚本工具提供的接口进行源码编译时,开发人员需要手动添加子代码仓的代码,对工程代码进行修改,存在编译效率低的问题。
发明内容
本公开提供一种代码编译方法、装置、电子设备及存储介质,以至少解决相关技术中代码编译效率低的问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种代码编译方法,包括:
响应于预设的编译命令,根据预先生成的第一配置文件,获取与主代码仓存在关联关系的多个子代码仓所包含的子代码;所述配置文件用于记录在历史编译过程中确定出的与所述主代码仓存在关联关系的子代码仓的信息;
将所述子代码添加到所述主代码仓,以在编译过程中,将所述子代码对应的中间编译结果转换为源码,并通过所述主代码仓对转换得到的源码进行编译打包,生成对应的运行文件。
在一示例性实施例中,所述响应于预设的编译命令,根据预先生成的第一配置文件,获取与主代码仓存在关联关系的多个子代码仓所包含的子代码,包括:
响应于预设的编译命令,从预先生成的第二配置文件中,获取与主代码仓存在关联关系的各子代码仓对应的配置参数;所述配置参数用于指示对应子代码仓的源码编译功能是否被开启;
根据所述配置参数,若确定存在所述源码编译功能已开启的目标子代码仓,则基于预先生成的第一配置文件获取所述目标子代码仓的信息,并基于所述信息,获取所述目标子代码仓所包含的子代码。
在一示例性实施例中,所述信息包括所述目标子代码仓对应的标识信息,所述基于所述信息,获取所述目标子代码仓所包含的子代码,包括:
基于所述标识信息,判断所述第一配置文件中是否有存储所述目标子代码仓对应的目录;
若确定所述第一配置文件存储有所述目录,则基于所述目录获取所述子代码。
在一示例性实施例中,所述判断所述第一配置文件中是否有存储所述目标子代码仓对应的目录之后,还包括:
若确定所述配置文件中未存储所述目标子代码仓对应的目录,则从所述第一配置文件中获取所述目标子代码仓对应的代码下载地址;
根据所述代码下载地址,下载所述目标子代码仓的子代码。
在一示例性实施例中,所述关联关系包括依赖关系,所述方法还包括:
在所述历史编译过程中,获取主代码仓与子代码仓之间的依赖关系;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京达佳互联信息技术有限公司,未经北京达佳互联信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110899136.0/2.html,转载请声明来源钻瓜专利网。