[发明专利]一种获取开源项目第三方组件信息的方法及装置在审
申请号: | 202011207692.9 | 申请日: | 2020-11-03 |
公开(公告)号: | CN112363758A | 公开(公告)日: | 2021-02-12 |
发明(设计)人: | 张小燕;万振华;王颉;董燕;李华 | 申请(专利权)人: | 深圳开源互联网安全技术有限公司 |
主分类号: | G06F8/74 | 分类号: | G06F8/74;G06F8/71;G06F8/41;G06F9/445 |
代理公司: | 深圳市恒申知识产权事务所(普通合伙) 44312 | 代理人: | 任哲夫 |
地址: | 518100 广东省深圳市龙华区龙华*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 获取 项目 第三 组件 信息 方法 装置 | ||
本发明提供了一种获取开源项目第三方组件信息的方法及装置,所述方法包括:获取开源项目提供的composer.json文件,根据composer.json文件编译第三方组件;对第三方组件的编译结果进行检测;若编译成功则生成composer.lock文件,对composer.lock文件进行解析,获取对应的第三方组件信息;若编译失败则对composer.json文件进行解析,获取对应的第三方组件信息。本发明对获取第三方组件信息的处理方法更加全面且减少了对网络环境和composer插件安装环境的依赖。
技术领域
本发明涉及计算机信息获取领域,尤其是指一种获取开源项目第三方组件信息的方法及装置。
背景技术
随着开源项目的广泛应用,越来越多的开源项目需要解析其源代码以及其需要引用的第三方组件。通过对第三方组件进行解析,可以准确定位该组件中的一些不足对其进行修复,从而修复项目的不足。
目前,主要获取第三方组件的工具为composer,但传统的composer的解析方式对网络环境、composer插件安装环境的依赖性较强,而且对获取第三方组件信息的处理方法不够全面。
发明内容
针对现有技术的不足,本发明提供了一种获取开源项目第三方组件信息的方法及装置,旨在解决现有的composer的解析方式对网络环境、composer插件安装环境的依赖性较强,而且对获取第三方组件信息的处理方法不够全面的问题。
为了解决上述技术问题,本发明采用了如下技术方案:
第一方面,提供了一种获取开源项目第三方组件信息的方法,包括:
获取开源项目提供的composer.json文件,根据composer.json文件编译第三方组件;
对第三方组件的编译结果进行检测;
若编译成功则生成composer.lock文件,对composer.lock文件进行解析,获取对应的第三方组件信息;
若编译失败则对composer.json文件进行解析,获取对应的第三方组件信息。
其中,所述若编译成功则生成composer.lock文件,对composer.lock文件进行解析,获取对应的第三方组件信息具体包括:
若编译成功则生成composer.lock文件,并对composer.lock文件中的packages模块进行解析,获取对应的第三方组件信息。
其中,所述若编译失败则对composer.json文件进行解析,获取对应的第三方组件信息具体包括:
若编译失败则对composer.json文件中的require模块进行解析,获取第三方组件的名字;
根据第三方组件的名字在目标网站上获取对应的第三方组件信息。
其中,所述获取开源项目第三方组件信息的方法还包括:
根据获取到的第三方组件信息对开源项目的源代码进行修复。
其中,所述第三方组件信息包括第三方组件的vendor、package、版本、gthub地址、要求的开源项目版本、项目类型、许可、作者、主页、搜索关键字、项目时间、自动加载路径信息。
第二方面,提供了一种获取开源项目第三方组件信息的装置,包括:
编译模块,用于获取开源项目提供的composer.json文件,根据composer.json文件编译第三方组件并生成composer.lock文件;
检测模块,用于对第三方组件的编译结果进行检测;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳开源互联网安全技术有限公司,未经深圳开源互联网安全技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011207692.9/2.html,转载请声明来源钻瓜专利网。