一种基于配置文件的项目构建方法、系统及相关设备技术方案

技术编号:35275405 阅读:23 留言:0更新日期:2022-10-19 10:54
本发明专利技术公开了一种基于配置文件的项目构建方法、系统及相关设备,方法包括:获取用于构建目标项目的配置文件,从上述配置文件中提取获得依赖包信息;获取依赖包管理信息,将上述依赖包管理信息与上述依赖包信息进行对比并确定待更新依赖包,上述待更新依赖包包括上述私有程序包存储库中缺失的依赖包和/或版本异常的依赖包;通过依赖包下载和/或依赖包生成的方式获取上述待更新依赖包对应的待扫描替换依赖包,对上述待扫描替换依赖包进行安全扫描后获得目标替换依赖包;根据目标替换依赖包构建目标项目。本发明专利技术有利于提高项目构建的成功率。功率。功率。

【技术实现步骤摘要】
一种基于配置文件的项目构建方法、系统及相关设备


[0001]本专利技术涉及软件开发
,尤其涉及的是一种基于配置文件的项目构建方法、系统及相关设备。

技术介绍

[0002]随着科学技术的发展,越来越多的软件被开发和改进并应用于不同的领域或场景中。目前在软件开发过程中,为了加快项目的研发速度以及减少代码开发工作量,可以通过依赖包来实现项目通用功能,即项目的构建过程中需要使用依赖包。
[0003]现有技术中,通常直接从私有程序包存储库中获取依赖包来构建项目。现有技术的问题在于,私有程序包存储库中可能缺少项目所需的依赖包从而导致项目无法构建,不利于提高项目构建的成功率。
[0004]因此,现有技术还有待改进和发展。

技术实现思路

[0005]本专利技术的主要目的在于提供一种基于配置文件的项目构建方法、系统及相关设备,旨在解决现有技术中直接从私有程序包存储库中获取依赖包来构建项目的方案不利于提高项目构建的成功率的问题。
[0006]为了实现上述目的,本专利技术第一方面提供一种基于配置文件的项目构建方法,其中,上述基于配置文件的项目构建方法包括:
[0007]获取用于构建目标项目的配置文件,从上述配置文件中提取获得依赖包信息,其中,上述依赖包信息包括上述配置文件对应的各依赖包的名称和版本信息;
[0008]获取依赖包管理信息,将上述依赖包管理信息与上述依赖包信息进行对比并确定待更新依赖包,其中,上述依赖包管理信息包括私有程序包存储库中存储的各依赖包的名称和版本信息,上述待更新依赖包包括上述私有程序包存储库中缺失的依赖包和/或版本异常的依赖包;
[0009]通过依赖包下载和/或依赖包生成的方式获取上述待更新依赖包对应的待扫描替换依赖包,对上述待扫描替换依赖包进行安全扫描后获得目标替换依赖包;
[0010]根据上述目标替换依赖包构建上述目标项目。
[0011]可选的,上述获取依赖包管理信息,将上述依赖包管理信息与上述依赖包信息进行对比并确定待更新依赖包,包括:
[0012]基于依赖包管理表获取依赖包管理信息,其中,上述依赖包管理表用于存储上述私有程序包存储库中存储的各依赖包的名称、版本信息、依赖关系信息、私有标志信息、更新时间和存储位置;
[0013]将上述依赖包管理信息与上述依赖包信息进行对比,将与上述配置文件对应但上述私有程序包存储库中未存储的依赖包作为上述待更新依赖包;
[0014]将上述依赖包管理信息与上述依赖包信息中具有相同名称但版本信息不同的依
赖包作为上述待更新依赖包。
[0015]可选的,上述依赖包管理信息还包括上述私有程序包存储库中存储的各依赖包的依赖关系信息,上述获取依赖包管理信息,将上述依赖包管理信息与上述依赖包信息进行对比并确定待更新依赖包,还包括:
[0016]根据上述依赖关系信息,将待使用依赖包在使用时需要依赖且在上述私有程序包存储库中未存储的依赖包作为上述待更新依赖包,其中,上述待使用依赖包是上述私有程序包存储库中的任意一个依赖包。
[0017]可选的,上述方法还包括:
[0018]获取上述私有程序包存储库中存储的各依赖包的代码更新最新时间;
[0019]对于上述私有程序包存储库中存储的各依赖包,将对应的代码更新最新时间与上述依赖包管理信息中的更新时间进行对比,将上述代码更新最新时间晚于上述更新时间的依赖包作为上述待更新依赖包
[0020]可选的,上述通过依赖包下载和/或依赖包生成的方式获取上述待更新依赖包对应的待扫描替换依赖包,对上述待扫描替换依赖包进行安全扫描后获得目标替换依赖包,包括:
[0021]将各上述待更新依赖包分别划分为第三方依赖包或项目私有依赖包;
[0022]通过互联网下载获取各上述第三方依赖包对应的待扫描替换依赖包;
[0023]基于DevOps平台中对应的持续集成流水线生成各上述项目私有依赖包对应的待扫描替换依赖包;
[0024]对上述待扫描替换依赖包进行安全扫描后获得目标替换依赖包。
[0025]可选的,在上述通过依赖包下载和/或依赖包生成的方式获取上述待更新依赖包对应的待扫描替换依赖包,对上述待扫描替换依赖包进行安全扫描后获得目标替换依赖包之后,上述方法还包括:
[0026]将上述目标替换依赖包存储到上述私有程序包存储库中,并更新上述依赖包管理信息。
[0027]本专利技术第二方面提供一种基于配置文件的项目构建系统,其中,上述基于配置文件的项目构建系统包括:
[0028]配置解析模块,用于获取用于构建目标项目的配置文件,从上述配置文件中提取获得依赖包信息,其中,上述依赖包信息包括上述配置文件对应的各依赖包的名称和版本信息;
[0029]依赖包对比模块,用于获取依赖包管理信息,将上述依赖包管理信息与上述依赖包信息进行对比并确定待更新依赖包,其中,上述依赖包管理信息包括私有程序包存储库中存储的各依赖包的名称和版本信息,上述待更新依赖包包括上述私有程序包存储库中缺失的依赖包和/或版本异常的依赖包;
[0030]依赖包获取模块,用于通过依赖包下载和/或依赖包生成的方式获取上述待更新依赖包对应的待扫描替换依赖包;
[0031]安全扫描模块,用于对上述待扫描替换依赖包进行安全扫描后获得目标替换依赖包;
[0032]项目构建模块,用于根据上述目标替换依赖包构建上述目标项目。
[0033]可选的,上述依赖包获取模块包括:
[0034]依赖包类别确定单元,用于将各上述待更新依赖包分别划分为第三方依赖包或项目私有依赖包;
[0035]第三方包处理单元,用于通过互联网下载获取各上述第三方依赖包对应的待扫描替换依赖包;
[0036]项目私有包处理单元,用于基于DevOps平台中对应的持续集成流水线生成各上述项目私有依赖包对应的待扫描替换依赖包。
[0037]本专利技术第三方面提供一种智能终端,上述智能终端包括存储器、处理器以及存储在上述存储器上并可在上述处理器上运行的基于配置文件的项目构建程序,上述基于配置文件的项目构建程序被上述处理器执行时实现上述任意一种基于配置文件的项目构建方法的步骤。
[0038]本专利技术第四方面提供一种计算机可读存储介质,上述计算机可读存储介质上存储有基于配置文件的项目构建程序,上述基于配置文件的项目构建程序被处理器执行时实现上述任意一种基于配置文件的项目构建方法的步骤。
[0039]由上可见,本专利技术方案中,获取用于构建目标项目的配置文件,从上述配置文件中提取获得依赖包信息,其中,上述依赖包信息包括上述配置文件对应的各依赖包的名称和版本信息;获取依赖包管理信息,将上述依赖包管理信息与上述依赖包信息进行对比并确定待更新依赖包,其中,上述依赖包管理信息包括私有程序包存储库中存储的各依赖包的名称和版本信息,上述待更新依赖包包括上述私有程序包存储库中缺失的依赖包和/或版本异常的依赖包;通过依赖包下载和/或依赖包生成的方式获取本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于配置文件的项目构建方法,其特征在于,所述方法包括:获取用于构建目标项目的配置文件,从所述配置文件中提取获得依赖包信息,其中,所述依赖包信息包括所述配置文件对应的各依赖包的名称和版本信息;获取依赖包管理信息,将所述依赖包管理信息与所述依赖包信息进行对比并确定待更新依赖包,其中,所述依赖包管理信息包括私有程序包存储库中存储的各依赖包的名称和版本信息,所述待更新依赖包包括所述私有程序包存储库中缺失的依赖包和/或版本异常的依赖包;通过依赖包下载和/或依赖包生成的方式获取所述待更新依赖包对应的待扫描替换依赖包,对所述待扫描替换依赖包进行安全扫描后获得目标替换依赖包;根据所述目标替换依赖包构建所述目标项目。2.根据权利要求1所述的基于配置文件的项目构建方法,其特征在于,所述获取依赖包管理信息,将所述依赖包管理信息与所述依赖包信息进行对比并确定待更新依赖包,包括:基于依赖包管理表获取依赖包管理信息,其中,所述依赖包管理表用于存储所述私有程序包存储库中存储的各依赖包的名称、版本信息、依赖关系信息、私有标志信息、更新时间和存储位置;将所述依赖包管理信息与所述依赖包信息进行对比,将与所述配置文件对应但所述私有程序包存储库中未存储的依赖包作为所述待更新依赖包;将所述依赖包管理信息与所述依赖包信息中具有相同名称但版本信息不同的依赖包作为所述待更新依赖包。3.根据权利要求2所述的基于配置文件的项目构建方法,其特征在于,所述依赖包管理信息还包括所述私有程序包存储库中存储的各依赖包的依赖关系信息,所述获取依赖包管理信息,将所述依赖包管理信息与所述依赖包信息进行对比并确定待更新依赖包,还包括:根据所述依赖关系信息,将待使用依赖包在使用时需要依赖且在所述私有程序包存储库中未存储的依赖包作为所述待更新依赖包,其中,所述待使用依赖包是所述私有程序包存储库中的任意一个依赖包。4.根据权利要求2所述的基于配置文件的项目构建方法,其特征在于,所述方法还包括:获取所述私有程序包存储库中存储的各依赖包的代码更新最新时间;对于所述私有程序包存储库中存储的各依赖包,将对应的代码更新最新时间与所述依赖包管理信息中的更新时间进行对比,将所述代码更新最新时间晚于所述更新时间的依赖包作为所述待更新依赖包。5.根据权利要求1所述的基于配置文件的项目构建方法,其特征在于,所述通过依赖包下载和/或依赖包生成的方式获取所述待更新依赖包对应的待扫描替换依赖包,对所述待扫描替换依赖包进行安全扫描后获得目标替换依赖包,包括:将各所述待更新依赖包分别划分为第三方依赖包或项目私有依赖包;通...

【专利技术属性】
技术研发人员:梁砾邹海锋何明璐
申请(专利权)人:深圳市远行科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1