[发明专利]一种编译方法及装置有效

专利信息
申请号: 202210038682.X 申请日: 2022-01-13
公开(公告)号: CN114371852B 公开(公告)日: 2023-10-24
发明(设计)人: 王龙海 申请(专利权)人: 抖音视界有限公司
主分类号: G06F8/41 分类号: G06F8/41
代理公司: 北京中知法苑知识产权代理有限公司 11226 代理人: 李明
地址: 100041 北京市石景山区*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 编译 方法 装置
【说明书】:

本公开提供了一种编译方法及装置,首先获取目标源文件,并生成所述目标源文件对应的待编译文件目录;然后,响应于所述第一源代码的编译过程启动,将所述资源索引文件的文件标识从所述待编译文件目录中移除,并基于移除所述资源索引文件的文件标识后的待编译文件目录,对所述第一源代码进行编译;最后,响应于所述第二源代码的编译过程启动,将所述资源索引文件的文件标识添加至所述待编译文件目录中,并基于添加所述资源索引文件的文件标识后的待编译文件目录,对所述第二源代码进行编译。

技术领域

本公开涉及计算机技术领域,具体而言,涉及一种编译方法及装置。

背景技术

科特林(Kotlin)是一种用于多平台应用的静态编程语言,可以编译成Java字节码、JavaScript或二进制代码,便于在没有Java虚拟机的设备上运行,由于Kotlin的各种优点,开发人员使用Kotlin也越来越频繁。通常,Kotlin代码的编译需要花费较长的时间,在为了降低耗时引入一些开发工具或插件之后,发现了许多由于内存不足导致编译失败的情况。内存不足(Out Of Memory,OOM)通常是由于虚拟机本身可用的内存不足,或者应用占用的内存没有被释放导致的内存泄漏或者内存溢出引起的。目前,难以在使用插件保证编译速度的同时避免OOM问题,Kotlin编译的效率较低。

发明内容

本公开实施例至少提供一种编译方法及装置。

第一方面,本公开实施例提供了一种编译方法,包括:

获取目标源文件,并生成所述目标源文件对应的待编译文件目录;所述目标源文件中包含基于第一编程语言编写的第一源代码、基于第二编程语言编写的第二源代码、打包后的资源文件和资源索引文件;所述待编译文件目录中包含所述第一源代码的文件标识、所述第二源代码的文件标识、所述打包后的资源文件的文件标识以及所述资源索引文件的文件标识;

响应于所述第一源代码的编译过程启动,将所述资源索引文件的文件标识从所述待编译文件目录中移除,并基于移除所述资源索引文件的文件标识后的待编译文件目录,对所述第一源代码进行编译;

响应于所述第二源代码的编译过程启动,将所述资源索引文件的文件标识添加至所述待编译文件目录中,并基于添加所述资源索引文件的文件标识后的待编译文件目录,对所述第二源代码进行编译。

一种可选的实施方式中,所述方法还包括:

将对所述第一源代码进行编译得到的第一编译产物及对所述第二源代码进行编译得到的第二编译产物融合,得到第三编译产物;

对所述第三编译产物进行格式转换,得到所述目标源文件对应的可执行文件。

一种可选的实施方式中,所述基于移除所述资源索引文件的文件标识后的待编译文件目录,对所述第一源代码进行编译,包括:

基于移除所述资源索引文件的文件标识后的待编译文件目录,对所述第一源代码的注释进行处理,得到所述第一源代码的注释对应的中间代码;

基于移除所述资源索引文件的文件标识后的待编译文件目录,对所述中间代码及所述第一源代码进行编译,得到第一编译产物。

一种可选的实施方式中,所述获取目标源文件,包括:

获取待编译的初始源文件;所述初始源文件包括初始资源文件、所述第一源代码和所述第二源代码;

将所述初始资源文件打包,得到所述打包后的资源文件以及所述打包后的资源文件对应的所述资源索引文件;

将所述资源索引文件、所述打包后的资源文件、所述第一源代码及所述第二源代码作为所述目标源文件所述目标源文件。

一种可选的实施方式中,所述资源索引文件为R.Java文件;所述待编译文件目录为SourceSet目录。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于抖音视界有限公司,未经抖音视界有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202210038682.X/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top