一种数据包的处理方法和设备的制造方法

文档序号:9687299阅读:573来源:国知局
一种数据包的处理方法和设备的制造方法
【技术领域】
[0001] 本申请涉及计算机技术领域,尤其涉及一种数据包的处理方法和设备。
【背景技术】
[0002] 随着计算机技术的发展,大量软件随之出现。同一个软件的安装包也随着科技的 发展出现了不同版本。例如;计算机的操作系统,出现了windowXP系统、Window7系统W 及Window8系统。
[0003] -个软件在运行时需要其他软件作技术支撑,郝么该软件与支撑其技术的软件之 间构建依赖关系,也就意味着,该软件的安装包在打包时需要包含支撑其技术的软件的数 据包。
[0004] 但是,目前,软件安装包在打包时,其需要技术支撑的数据包不止一个,但是送不 止一个的技术支撑的数据包之间也存在依赖关系,郝么软件安装包在被安装时就会因为数 据包与数据包之间、W及数据包与安装包之间存在的依赖关系出现依赖冲突的情形,导致 软件安装失败。

【发明内容】

[0005] 有鉴于此,本申请实施例提供了一种数据包的处理方法和设备,用于解决目前存 在的软件安装包内部数据包与数据包、W及数据包与安装包之间发生依赖冲突导致软件安 装失败的问题。
[0006] -种数据包的处理方法,包括:
[0007] 提取安装包内记录的至少一个数据包、所述数据包的版本号W及所述数据包依赖 的其他数据包的版本号;
[0008] 根据提取得到的所述至少一个所述数据包的版本号、所述数据包依赖的其他数据 包的版本号W及所述安装包依赖的数据包的版本号,确定所述安装包与所述至少一个数据 包W及不同数据包之间的依赖关系;
[0009] 利用所述依赖关系,查找出所述安装包中记录的数据包是否存在依赖冲突,W便 所述安装包在被打包时选择不具有依赖冲突的数据包。
[0010] 所述根据提取得到的所述至少一个数据包的依赖版本号、所述数据包依赖的其他 数据包的版本号W及所述安装包依赖的数据包的版本号,确定所述安装包与所述至少一个 数据包W及不同数据包之间的依赖关系,包括:
[0011] 当提取得到的所述数据包的个数为一个时,判断所述数据包的版本号与所述安装 包依赖的数据包的版本号信息之间的逻辑关系是否存在相惇;
[0012] 若所述数据包的版本号与所述安装包依赖的数据包的版本号之间的逻辑关系相 惇时,确定所述数据包与所述安装包之间依赖冲突;
[0013] 若所述数据包的版本号与所述安装包依赖的数据包的版本号之间的逻辑关系不 相惇时,确定所述数据包与所述安装包之间不存在依赖冲突。
[0014] 所述根据提取得到的所述至少一个数据包的依赖版本号、所述数据包依赖的其他 数据包的版本号W及所述安装包依赖的数据包的版本号,确定所述安装包与所述至少一个 数据包W及不同数据包之间的依赖关系,包括:
[0015] 当提取得到的所述数据包的个数为至少两个时,根据提取得到的至少两个数据包 的版本号、每一个所述数据包依赖的其他数据包的版本号W及所述安装包依赖的数据包的 版本号,建立包含了所述安装包W及所述至少两个数据包之间的关系图;
[0016] 若建立的包含了所述安装包W及所述至少两个数据之间的关系图构成环形图时, 确定所述安装包与所述环形图中包含的所述至少两个数据包之间依赖冲突;
[0017] 若建立的包含了所述安装包W及所述至少两个数据包之间的关系图不构成环形 图时,确定所述安装包与所述环形图中包含的所述至少两个数据包之间不存在依赖冲突。
[0018] 所述根据提取得到的至少两个数据包的版本号、每一个所述数据包依赖的其他数 据包的版本号W及所述安装包依赖的数据包的版本号,建立包含了所述安装包W及所述至 少两个数据包之间的关系图,包括:
[0019] W安装包为父节点,根据所述安装包依赖的数据包的版本号,将数据包的版本号 符合所述安装包依赖的数据包的版本号的数据包作为父节点的子节点;
[0020] 针对得到的每一个子节点,根据该子节点的数据包依赖的其他数据包的版本号, 将其他数据包中符合该子节点的数据包依赖的其他数据包的版本号的数据包作为该子节 点的下一级子节点,依次往下,建立包含了所述安装包W及所述至少两个数据包之间的父 子节点图。
[0021] 所述利用所述依赖关系,查找出所述安装包中记录的数据包是否存在依赖冲突, 包括:
[0022] 当确定的所述依赖关系为依赖冲突时,确定所述安装包中记录的数据包存在依赖 冲突;
[0023] 当确定的所述依赖关系为不存在依赖冲突时,确定所述安装包中记录的数据包不 存在依赖冲突。
[0024] 所述方法还包括:
[00巧]在确定所述安装包中中记录的数据包不存在依赖冲突时,从所述安装包中记录的 数据包中选择一个版本号与所述安装包的版本号较接近的数据包作为所述安装包的依赖 数据包,W使的所述安装包在打包时利用选择的数据包。
[0026] -种数据包的处理设备,包括:
[0027] 提取模块,用于提取安装包内记录的至少一个数据包、所述数据包的版本号W及 所述数据包依赖的其他数据包的版本号;
[0028] 关系确定模块,用于根据提取得到的所述至少一个所述数据包的版本号、所述数 据包依赖的其他数据包的版本号W及所述安装包依赖的数据包的版本号,确定所述安装包 与所述至少一个数据包W及不同数据包之间的依赖关系;
[0029] 处理模块,用于利用所述依赖关系,查找出所述安装包中记录的数据包是否存在 依赖冲突,W便所述安装包在被打包时选择不具有依赖冲突的数据包。
[0030] 所述关系确定模块,具体用于当提取得到的所述数据包的个数为一个时,判断所 述数据包的版本号与所述安装包依赖的数据包的版本号信息之间的逻辑关系是否存在相 惇;
[0031] 若所述数据包的版本号与所述安装包依赖的数据包的版本号之间的逻辑关系相 惇时,确定所述数据包与所述安装包之间依赖冲突;
[0032] 若所述数据包的版本号与所述安装包依赖的数据包的版本号之间的逻辑关系不 相惇时,确定所述数据包与所述安装包之间不存在依赖冲突。
[0033] 所述关系确定模块,具体用于当提取得到的所述数据包的个数为至少两个时,根 据提取得到的至少两个数据包的版本号、每一个所述数据包依赖的其他数据包的版本号W 及所述安装包依赖的数据包的版本号,建立包含了所述安装包W及所述至少两个数据包之 间的关系图;
[0034] 若建立的包含了所述安装包W及所述至少两个数据之间的关系图构成环形图时, 确定所述安装包与所述环形图中包含的所述至少两个数据包之间依赖冲突;
[0035] 若建立的包含了所述安装包W及所述至少两个数据包之间的关系图不构成环形 图时,确定所述安装包与所述环形图中包含的所述至少两个数据包之间不存在依赖冲突。
[0036] 所述关系确定模块,具体用于W安装包为父节点,根据所述安装包依赖的数据包 的版本号,将数据包的版本号符合所述安装包依赖的数据包的版本号的数据包作为父节点 的子节点;
[0037] 针对得到的每一个子节点,根据该子节点的数据包依赖的其他数据包的版本号, 将其他数据包中符合该子节点的数据包依赖的其他数据包的版本号的数据包作为该子节 点的下一级子节点,依次往下,建立包含了所述安装包W及所述至少两个数据包之间的父 子节点图。
[0038] 所述处理模块,具体用于当确定的所述依赖关系为依赖冲突时,确定所述安装包 中记录的数据包存在依赖冲突;
[0039] 当确定的所述依赖关系为不存在依赖冲突时,确定所述安装包中记录的数据包不 存在依赖冲突。
[0040] 所述设备还包括:
[0041] 数据包选择模块,用于在确定所述安装包中中记录的数据包不存在依赖冲突时, 从所述安装包中记录的数据包中选择一个版本号与所述安装包的版本号较接近的数据包 作为所述安装包的依赖数据包,W使的所述安装包在打包时利用选择的数据包。
[0042] 本申请有益效果如下:
[0043] 本申请实施例提取安装包内记录的至少一个数据包、数据包的版本号W及数据包 依赖的其他数据包的版本号;根据提取得到的所述至少一个所述数据包的版本号、数据包 依赖的其他数据包的版本号W及安装包依赖的数据包的版本号,确定安装包与至少一个数 据包W及不同数据包之间的依赖关系;利用依赖关系,查找出安装包中记录的数据包是否 存在依赖冲突,W便安装包在被打包时选择不具有依赖冲突的数据包,一方面,有效避免了 由于安装包中记录的数据包之间存在依赖冲突致使安装包打包错误;另一方面,能够对安 装包记录的数据包与其依赖的其他数据包之间的依赖关系进行识别,为后续为安装包选择 适合的数据包奠定基础,提升了安装包打包的精确度,有效改善了软件安装的成功率。
【附图说明】
[0044] 为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使 用的附图作简要介绍,显而易见地,下面
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1