[发明专利]数据打包方法及装置有效

专利信息
申请号: 201410738626.2 申请日: 2014-12-04
公开(公告)号: CN104462352B 公开(公告)日: 2018-04-06
发明(设计)人: 崔维福;张娜 申请(专利权)人: 北京国双科技有限公司
主分类号: G06F17/30 分类号: G06F17/30
代理公司: 北京康信知识产权代理有限责任公司11240 代理人: 李志刚,吴贵明
地址: 100086 北京市海淀区*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 数据 打包 方法 装置
【说明书】:

技术领域

发明涉及数据处理领域,具体而言,涉及一种数据打包方法及装置。

背景技术

数据包开发工具,例如,NuGet是免费、开源的包管理开发工具,专注于在.NET应用开发过程中,简单地合并第三方的组件库。Nuget组件库基于.NET工程文件进行打包时具有依赖项分析功能,在利用Nuget组件库打包时需要配置目标文件的依赖项,其中,依赖项是指目标文件所引用的文件或是程序等,例如,当某个程序或动态链接库(Dynamic Link Library,简称为DLL)使用其他动态链接库中的函数时,就会创建依赖项。现有技术中,由于.NET工程文件中包含的程序间有所引用时可以方便的知道依赖关系,得到依赖项,但是在没有.NET工程文件只有动态链接库文件时,无法直接找到该动态链接库文件的依赖项,因此需要人工的进行动态链接库文件的依赖项分析,处理过程十分繁琐,打包效率较低。

针对相关技术中没有工程文件的动态链接库文件打包效率低的问题,目前尚未提出有效的解决方案。

发明内容

本发明的主要目的在于提供一种数据打包方法及装置,以解决相关技术中没有工程文件的动态链接库文件打包效率低的问题。

为了实现上述目的,根据本发明的一个方面,提供了一种数据打包方法。

根据本发明的数据打包方法包括:获取目标动态链接库的元数据信息;根据元数据信息创建依赖关系树,其中,依赖关系树的节点包括父节点和子节点,子节点为父节点的依赖项,父节点包括根节点,根节点为目标动态链接库;以及根据依赖关系树对目标动态链接库进行打包。

进一步地,根据元数据信息创建依赖关系树包括:根据元数据信息查找目标动态链接库的依赖项,得到第一依赖项,其中,第一依赖项作为依赖关系树的第一级子节点;获取第一依赖项的元数据信息;以及根据第一依赖项的元数据信息查找第二依赖项,其中,第二依赖项为第一依赖项的依赖项,并且第二依赖项为第一依赖项的子节点。

进一步地,子节点包括叶节点,根据依赖关系树对目标动态链接库进行打包包括:从根节点遍历依赖关系树,得到依赖关系树的所有节点;以及依次从依赖关系树的叶节点至依赖关系树的根节点对依赖关系树的每个节点进行打包。

进一步地,子节点包括叶节点,根据依赖关系树对目标动态链接库进行打包包括:从根节点遍历依赖关系树,依次判断依赖关系树的每一个节点是否已经打包过;如果判断出依赖关系树存在已经打包过的节点,则不再遍历已经打包过的节点的子节点,得到遍历结果;以及根据遍历结果依次从依赖关系树的叶节点至依赖关系树的根节点对依赖关系树的每个节点进行打包,其中,对于已经打包过的节点不再进行打包。

进一步地,在根据元数据信息查找目标动态链接库的依赖项之后,该方法还包括:从目标动态链接库的依赖项中获取自定义的动态链接库;以及将自定义的动态链接库的作为依赖关系树的第一级子节点。

为了实现上述目的,根据本发明的另一方面,提供了一种数据打包装置。

根据本发明的数据打包装置包括:第一获取单元,用于获取目标动态链接库的元数据信息;创建单元,用于根据元数据信息创建依赖关系树,其中,依赖关系树的节点包括父节点和子节点,子节点为父节点的依赖项,父节点包括根节点,根节点为目标动态链接库;以及打包单元,用于根据依赖关系树对目标动态链接库进行打包。

进一步地,创建单元包括:根据元数据信息查找目标动态链接库的依赖项,得到第一依赖项,其中,第一依赖项作为依赖关系树的第一级子节点;获取第一依赖项的元数据信息;以及根据第一依赖项的元数据信息查找第二依赖项,其中,第二依赖项为第一依赖项的依赖项,并且第二依赖项为第一依赖项的子节点。

进一步地,子节点包括叶节点,打包单元包括:遍历单元,用于从根节点遍历依赖关系树,得到依赖关系树的所有节点;以及打包单元,用于依次从依赖关系树的叶节点至依赖关系树的根节点对依赖关系树的每个节点进行打包。

进一步地,子节点包括叶节点,打包单元包括:判断模块,用于从根节点遍历依赖关系树,依次判断依赖关系树的每一个节点是否已经打包过;如果判断出依赖关系树存在已经打包过的节点,则不再遍历已经打包过的节点的子节点,得到遍历结果;以及根据遍历结果依次从依赖关系树的叶节点至依赖关系树的根节点对依赖关系树的每个节点进行打包,其中,对于已经打包过的节点不再进行打包。

进一步地,该装置还包括:第二获取单元,用于从目标动态链接库的依赖项中获取自定义的动态链接库;以及确定单元,用于将自定义的动态链接库的作为依赖关系树的第一级子节点。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京国双科技有限公司,未经北京国双科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201410738626.2/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top