一种开源类库监控方法、装置、设备及计算机存储介质制造方法及图纸

技术编号:21033573 阅读:40 留言:0更新日期:2019-05-04 05:11
本发明专利技术公开了一种开源类库监控方法、装置、设备及计算机存储介质。所述开源类库监控方法首先对当前软件项目的目标源代码进行分块处理,得到包含多个项目代码片段的当前数据集;然后分别从各个项目代码片段中提取不同种类的类关键字,根据提取到的类关键字对开源代码仓库进行检索,得到n个后选代码段;分别计算各个后选代码段与所述当前数据集之间的相似度;最后选取相似度大于预设相似阈值的后选代码段作为目标后选代码,从所述开源代码仓库中确定与所述目标后选代码对应的目标开源类代码库,进而能够有效监控大型项目中所使用的开源类库,实时获知开源类库的信息。

An Open Source Class Library Monitoring Method, Device, Equipment and Computer Storage Media

【技术实现步骤摘要】
一种开源类库监控方法、装置、设备及计算机存储介质
本专利技术涉及计算机信息
,尤其涉及一种开源类库监控方法、装置、设备及计算机存储介质。
技术介绍
程序员开发项目软件的过程中,在正在编写中的项目软件达到一定规模的时候,项目中难免被引入数十个甚至成百上千个开源库,如何跟踪定位这些开源类库,定期进行追踪,避免开源类库被污染(如植入恶意挖矿代码、开源协议变更等)或者类库缺陷暴露,最终对项目造成不同程度的损害,是我们急需考虑的一个问题。
技术实现思路
本专利技术的主要目的在于提供了一种开源类库监控装置方法、装置、设备以及计算机存储介质,旨在解决无法有效监控大型项目软件中源代码所引用的开源类库的问题。为实现上述目的,本专利技术提供了一种开源类库监控方法,所述方法包括以下步骤:对当前软件项目的目标源代码进行分块处理,得到包含多个项目代码片段的当前数据集;分别从各个项目代码片段中提取不同种类的类关键字,根据提取到的类关键字对开源代码仓库进行检索,得到n个后选代码段;分别计算各个后选代码段与所述当前数据集之间的相似度;选取相似度大于预设相似阈值的后选代码段作为目标后选代码,从所述开源代码仓库中确定本文档来自技高网...

【技术保护点】
1.一种开源类库监控方法,其特征在于,所述方法包括:对当前软件项目的目标源代码进行分块处理,得到包含多个项目代码片段的当前数据集;分别从各个项目代码片段中提取不同种类的类关键字,根据提取到的类关键字对开源代码仓库进行检索,得到n个后选代码段;分别计算各个后选代码段与所述当前数据集之间的相似度;选取相似度大于预设相似阈值的后选代码段作为目标后选代码,从所述开源代码仓库中确定与所述目标后选代码对应的目标开源类代码库,以实现对所述目标开源类代码库监控。

【技术特征摘要】
1.一种开源类库监控方法,其特征在于,所述方法包括:对当前软件项目的目标源代码进行分块处理,得到包含多个项目代码片段的当前数据集;分别从各个项目代码片段中提取不同种类的类关键字,根据提取到的类关键字对开源代码仓库进行检索,得到n个后选代码段;分别计算各个后选代码段与所述当前数据集之间的相似度;选取相似度大于预设相似阈值的后选代码段作为目标后选代码,从所述开源代码仓库中确定与所述目标后选代码对应的目标开源类代码库,以实现对所述目标开源类代码库监控。2.如权利要求1所述的方法,其特征在于,所述分别从各个项目代码片段中提取不同种类的类关键字,根据提取到的类关键字对开源代码仓库进行检索,得到n个后选代码的步骤,包括:对所述当前数据集中的项目代码片段进行遍历,分别从遍历到的项目代码片段中提取类关键字;统计每个项目代码片段中出现过的类关键字的种类,去掉重复出现过的类关键字,得到一个包括不同种类的类关键字的类集合;根据所述类集合对开源代码仓库进行检索,得到多个与所述类集合中的类关键字有交集的开源代码段;根据交集的数量对多个开源代码段进行排序,并按照交集数量由大到小的顺序从所述多个开源代码段选取前n个开源代码段作为后选代码段。3.如权利要求2所述的方法,其特征在于,所述分别计算各个后选代码段与所述当前数据集之间的相似度的步骤,包括:分别为所述当前数据集中的每个项目代码片段的类关键字分配一个项目校验码组合;将每个项目代码片段的类关键字对应的项目校验码组合送入哈希列表,以形成校验码集合;对所述n个后选代码段进行遍历,计算遍历到的当前后选代码段中不同源类的哈希值,得到多个源类的哈希校验码,其中,所述源类属于所述开源代码段与所述类集合中之间的交集;根据所述当前后选代码片段中不同的哈希值校验码分别对所述校验码集合进行遍历,在哈希值校验码与遍历到的项目校验码组合匹配成功时,则将所述当前后选代码与所述当前数据集之间的相似度进行加一,直至遍历完毕,得到所述当前后选代码与所述当前数据集之间的最终相似度值。4.如权利要求3所述的方法,其特征在于,所述项目校验码组合包括弱滚动校验码和MD4强校验码;所述将每个项目代码片段的类关键字对应的项目校验码组合送入哈希列表,以形成校验码集合的步骤,包括:将每个项目代码片段的类关键字对应的弱滚动校验码和MD4强校验码送入哈希列表,以形成校验码集合。5.如权利要求1-4任一项所述...

【专利技术属性】
技术研发人员:林泽全
申请(专利权)人:平安普惠企业管理有限公司
类型:发明
国别省市:广东,44

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

1