【技术实现步骤摘要】
Maven开源软件库的生成方法、装置及存储介质
本专利技术涉及软件库生成
,尤其是指一种Maven开源软件库的生成方法、装置、电子设备及存储介质。
技术介绍
Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,而Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。近些年来,Java语言凭借其功能强大、简单易用、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点,被广泛应用于编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等,同时作为Java开发的标准组件格式的Maven开源软件(以下简称Maven软件)也得到了极其广泛的应用。Maven软件主要由三个字段组成,分别是组织名称(groupid)、组件名称(artifactid)及版本名称(version),以下简称g、a及v。这三个字段相当于一个Maven软件的坐标,即每一个Maven软件的g、a及v均是唯一的。另外,每一个Maven软件都会对应一个根据文件的内容计算出来的哈希码,此哈希码相当于人类的指纹,即在绝大多数情况下,任意两个Maven软件的哈希码是不同的,即使是相同的,也可以根据每个Maven软件的g、a及v加以区分。在分析应用软件的时候,可以直接根据扫描出来的Maven开源软件的哈希码即可匹配该开源软件的组件构成信息。然而,如果没有Maven开源软件库,那便需要实时对应用组成里的组件进行扫 ...
【技术保护点】
1.一种Maven开源软件库的生成方法,其特征在于,包括如下步骤:/n构建多个参数并生成参数表,所述参数被定义为任一Maven开源软件的组织名称或组件名称的部分关键词;/n将所述参数表中的多个参数依次代入至Maven提供的第一接口,所述第一接口用于对多个参数与Maven开源软件的组织名称或组件名称的关键词进行匹配,并返回分别与多个所述参数相关的Maven开源软件的组织名称及组件名称;/n将所述第一接口返回的分别与多个参数相关的Maven开源软件的组织名称或组件名称依次代入至Maven提供的第二接口,所述第二接口用于根据分别与多个参数相关的Maven开源软件的组织名称或组件名称查找并返回Maven开源软件的版本名称;/n根据Maven提供的每一个所述接口返回的所有Maven开源软件的相关信息,生成Maven开源软件库。/n
【技术特征摘要】
1.一种Maven开源软件库的生成方法,其特征在于,包括如下步骤:
构建多个参数并生成参数表,所述参数被定义为任一Maven开源软件的组织名称或组件名称的部分关键词;
将所述参数表中的多个参数依次代入至Maven提供的第一接口,所述第一接口用于对多个参数与Maven开源软件的组织名称或组件名称的关键词进行匹配,并返回分别与多个所述参数相关的Maven开源软件的组织名称及组件名称;
将所述第一接口返回的分别与多个参数相关的Maven开源软件的组织名称或组件名称依次代入至Maven提供的第二接口,所述第二接口用于根据分别与多个参数相关的Maven开源软件的组织名称或组件名称查找并返回Maven开源软件的版本名称;
根据Maven提供的每一个所述接口返回的所有Maven开源软件的相关信息,生成Maven开源软件库。
2.如权利要求1所述的Maven开源软件库的生成方法,其特征在于,所述将所述第一接口返回的分别与多个参数相关的Maven开源软件的组织名称或组件名称依次代入至Maven提供的第二接口之后,还包括:
将所述第一接口及第二接口返回的所有Maven开源软件的组织名称、组件名称及版本名称依次代入至Maven提供的第三接口,所述第三接口用于对第一接口及第二接口返回的所有Maven开源软件的组织名称、组件名称及版本名称进行对应拼接,生成并返回所有Maven开源软件的哈希码。
3.如权利要求2所述的Maven开源软件库的生成方法,其特征在于,所述根据Maven提供的每一个所述接口返回的所有Maven开源软件的相关信息,生成Maven开源软件库之后,还包括:
将经所述第三接口对应拼接后的所有Maven开源软件的组织名称、组件名称及版本名称依次代入至Maven提供的第四接口,所述第四接口用于下载所有与Maven开源软件的组织名称、组件名称及版本名称对应的Maven开源软件的pom文件。
4.如权利要求3所述的Maven开源软件库的生成方法,其特征在于,所述将经所述第三接口对应拼接后的所有Maven开源软件的组织名称、组件名称及版本名称依次代入至Maven提供的第四接口之后,还包括:
对所述pom文件内的dependencies元素下的每一个dependency进行解析,获得每一个所述dependency的相关信息,且每一个所述dependency均为Maven开源软件;
判断每一个所述dependency的相关信息是否存在于Maven开源软件库,若否,则将每一个所述dependency的相关信息存储至Maven开源软件库。
5.如权利要求1-4任一项所述的Maven开源软件库的生成方法,其特征在于:多个所述参数均为26个字母的随机组合,且任一所述参数的长...
【专利技术属性】
技术研发人员:汪杰,万振华,王颉,董燕,李华,洪二稳,
申请(专利权)人:深圳开源互联网安全技术有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。