[发明专利]一种管理依赖包版本的方法和系统有效
申请号: | 201810185657.8 | 申请日: | 2018-03-07 |
公开(公告)号: | CN108334334B | 公开(公告)日: | 2022-02-01 |
发明(设计)人: | 刘宁 | 申请(专利权)人: | 政采云有限公司 |
主分类号: | G06F8/71 | 分类号: | G06F8/71;G06F8/65 |
代理公司: | 北京智信禾专利代理有限公司 11637 | 代理人: | 吴桦;吴肖肖 |
地址: | 310024 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 管理 依赖 版本 方法 系统 | ||
本申请公开了一种管理依赖包版本的方法和系统,其中所述方法包括在获取统一的版本依赖规则,所述版本依赖规则中描述满足最低兼容要求的所有依赖包的版本信息;按照所述版本依赖规则对本地项目执行版本依赖扫描,确定所述本地项目中是否存在不符合所述版本依赖规则的依赖冲突;针对存在依赖冲突的依赖包按照版本依赖规则规定的方式进行处理。
技术领域
本申请涉及计算机通信技术领域,具体涉及一种管理依赖包版本的方法和系统。
背景技术
伴随计算机通信技术的发展,软件开发项目和模块越来越多,规模越来越大。一个项目模块会使用到各种开源依赖包或者公司内部其他团队提供的依赖包。当一个软件项目需要用到其他软件项目发布的开发包时,要在这个软件项目中描述对于另外的软件项目的开发包的依赖关系,包括版本信息等,在大规模的软件项目中这种依赖关系可能会非常复杂,伴随开发工作的持续进展,这种依赖关系也可能随时发生变化,因此很容易出现版本依赖冲突的情况。例如,某软件项目A分别依赖了软件项目B的版本为1.0的开发包和软件项目C的版本为3.0的开发包,而软件项目B的版本为1.0的开发包依赖了软件项目D的版本为1.0的开发包,软件项目C的版本为3.0的开发包则依赖了软件项目D的版本为2.0的开发包,此时就出现了软件项目D的开发包依赖冲突,这就是所谓的版本依赖冲突。
每个依赖包都是一个计算机指令的集合,包含了系统对外的接口定义,各种常量变量定义,及各种公共方法的声明,发布依赖包是共享计算机指令代码的一种方式,开发项目中除了会涉及到本地项目中的各模块的相互依赖,还会用到内部合作团队提供的开源二方包和外部开源三方包。所述二方包一般指内部的其他项目团队发布的依赖包,所述三方包是指外部的开源库发布的依赖包。所述二方包和三方包的升级往往会涉及到所有的依赖项目需要升级包版本,尤其是当依赖包的升级涉及系统安全、代码漏洞、算法改进等重要更新时,需要立即导入新版本的依赖包,然而目前的方式都是通过人工排查、邮件通知和邮件跟踪来实现项目的依赖升级。传统的方式效率低且进度不好控制,已无法满足大规模并行开发项目的需要。因此,亟须提供一种能够方便、有效的管理依赖包版本的方法。
发明内容
为了解决现有技术中存在的问题,发明人构思了一种管理依赖包版本的方法、系统、计算设备及计算机可读存储介质,以解决传统方式的弊端,通过便捷、高效的方式实现依赖包版本的管理。
本申请公开了一种管理依赖包版本的方法,该方法包括:
获取统一的版本依赖规则,所述版本依赖规则中描述满足最低兼容要求的所有依赖包的版本信息;
按照所述版本依赖规则对本地项目执行版本依赖扫描,确定所述本地项目中是否存在不符合所述版本依赖规则的依赖冲突;
针对存在依赖冲突的依赖包按照版本依赖规则规定的方式进行处理。
可选地,所述处理包括:
将本地项目中存在依赖冲突的依赖包强制升级到所述依赖规则规定的版本;或
针对本地项目中存在依赖冲突的依赖包发出升级建议。
可选地,所述方法还包括:如果所述版本依赖扫描中发现所述版本依赖规则中未记录的新的依赖包,则发送提示更新的信息,所述提示更新的信息中携带所述未记录的新的依赖包的信息。
可选地,所述依赖冲突包括错误级别依赖冲突和警告级别依赖冲突,若确定发生错误级别依赖冲突则在完成所有冲突依赖规则的扫描后终止构建所述本地项目,否则仅发送警告提示信息。
可选地,所述方法还包括:
在完成所述版本依赖扫描后将扫描记录上传至数据库。
可选地,所述处理包括实时处理和预定时间处理。
可选地,从依赖包仓库下载所述版本依赖规则描述的满足最低兼容要求的依赖包。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于政采云有限公司,未经政采云有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810185657.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种源代码库更新方法及装置
- 下一篇:一种软件源代码版本确定方法及装置