[发明专利]一种软件构建方法、计算机可读存储介质及电子设备在审
申请号: | 202310603972.9 | 申请日: | 2023-05-23 |
公开(公告)号: | CN116643728A | 公开(公告)日: | 2023-08-25 |
发明(设计)人: | 刘亚克;郎国育;牛中华;杨清峰 | 申请(专利权)人: | 安徽蔚来智驾科技有限公司 |
主分类号: | G06F8/30 | 分类号: | G06F8/30;G06F8/71;G06F8/41;G06F16/17 |
代理公司: | 北京瀚仁知识产权代理事务所(普通合伙) 11482 | 代理人: | 陈敏 |
地址: | 230601 安徽省合肥市经济*** | 国省代码: | 安徽;34 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 软件 构建 方法 计算机 可读 存储 介质 电子设备 | ||
本发明涉及计算机技术领域,具体提供一种软件构建方法、计算机可读存储介质及电子设备,旨在解决现有云端线上软件构建效率低且容易出现误写入操作的的问题。为此目的,本发明的软件构建包括:将远程缓存目录挂载到本地缓存目录下;获取待构建的源代码;基于本地缓存目录中的依赖包,对源代码进行本地构建。该方法可以避免重复下载以及重复构建相同的依赖库,降低了网络状况的影响,且有利于保证依赖库版本的一致性。另外,将挂载到本地的远程缓存当作只读缓存,而所有的写操作都在本地,避免对远程缓存的误写入操作以及频繁写入挂载的远程缓存所带来的网络延时和硬件性能的影响,极大地提高了构建效果。
技术领域
本发明涉及计算机技术领域,具体提供一种软件构建方法、计算机可读存储介质及电子设备。
背景技术
随着互联网技术的发展,各种软件层出不穷,且同一软件也会不断更新功能进行软件升级。在这些软件开发过程中,软件构建是一个比较重要的环节,通过进行软件构建可以将开发环境编写的源代码转换成生产环境的制品,如可执行文件、库文件等。
相关技术中,在进行软件构建时通常采用云端线上构建的方式,使用远程缓存目录执行写操作,该方法一方面容易受到网络状况、公共资源性能等因素的影响,大大降低了构建效率;另一方面,所有模块使用同一远程缓存目录执行写操作,有误写入污染缓存的风险;此外,如果前一次构建出现构建失败、取消或超时等情况,会导致构建异常中断,远程缓存目录中是死锁状态,后续无法继续构建。
发明内容
本发明旨在解决上述技术问题,即,解决现有云端线上软件构建效率低且容易出现误写入操作的问题。
在第一方面,本发明提供一种软件构建方法,所述方法包括:
将远程缓存目录挂载到本地缓存目录下;
获取待构建的源代码;
基于所述本地缓存目录中的依赖包,对所述源代码进行本地构建。
在一些实施例中,所述基于所述本地缓存目录中的依赖包,对所述源代码进行本地构建之前,所述方法还包括:
定义配置信息,所述配置信息包括待构建的源代码所需要的依赖包信息;
基于所述依赖包信息,从所述本地缓存目录读取需要的依赖包并生成构建文件,所述构建文件包括所述需要的依赖包的头文件和库路径。
在一些实施例中,所述基于所述依赖包信息,从所述本地缓存目录读取需要的依赖包并生成构建文件之后,所述方法还包括:
生成锁文件,所述锁文件用于锁定包管理工具的配置信息。
在一些实施例中,所述基于所述本地缓存目录中的依赖包,对所述源代码进行本地构建,包括:
基于所述需要的依赖包的头文件和库路径链接到目标依赖包;
基于所述目标依赖包对所述源代码进行编译。
在一些实施例中,所述将远程缓存目录挂载到本地缓存目录下之前,所述方法还包括:
启动本地容器,并在所述本地容器中安装包管理工具。
在一些实施例中,所述基于所述本地缓存目录中的依赖包,对所述源代码进行本地构建之前,所述方法还包括:
创建本地编译目录;
将所述本地缓存目录符号链接到所述本地编译目录。
在一些实施例中,所述基于所述本地缓存目录中的依赖包,对所述源代码进行本地构建,包括:
读取所述本地编译目录中的文件并根据与所读取的文件对应的符号链接指向所述本地缓存目录;
使用所述本地缓存目录中的依赖包对源代码进行编译。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于安徽蔚来智驾科技有限公司,未经安徽蔚来智驾科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202310603972.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:无缝焊接卡扣玻扇
- 下一篇:一种利用废酸制备净水剂的方法