CN112612504A - 一种java安装包管理方法 - Google Patents

一种java安装包管理方法 Download PDF

Info

Publication number
CN112612504A
CN112612504A CN202011373244.6A CN202011373244A CN112612504A CN 112612504 A CN112612504 A CN 112612504A CN 202011373244 A CN202011373244 A CN 202011373244A CN 112612504 A CN112612504 A CN 112612504A
Authority
CN
China
Prior art keywords
java
data packet
shared data
subfiles
server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202011373244.6A
Other languages
English (en)
Other versions
CN112612504B (zh
Inventor
陈斌
陈曙光
金林平
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Telliver Information Technology Co ltd
Original Assignee
Telliver Information Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Telliver Information Technology Co ltd filed Critical Telliver Information Technology Co ltd
Priority to CN202011373244.6A priority Critical patent/CN112612504B/zh
Publication of CN112612504A publication Critical patent/CN112612504A/zh
Application granted granted Critical
Publication of CN112612504B publication Critical patent/CN112612504B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/658Incremental updates; Differential updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明提供了计算机技术领域的一种JAVA安装包管理方法,包括如下步骤:步骤S10、服务器将JAVA安装包划分为共享数据包和差异数据包;步骤S20、终端基于服务器发送的所述共享数据包生成本地共享数据包;步骤S30、终端从服务器下载所述差异数据包;步骤S40、终端基于硬连接技术整合所述本地共享数据包和差异数据包,得到JAVA安装包并运行。本发明的优点在于:极大的提升了JAVA安装包的压缩率,进而极大的提升了用户体验。

Description

一种JAVA安装包管理方法
技术领域
本发明涉及计算机技术领域,特别指一种JAVA安装包管理方法。
背景技术
JAVA是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此JAVA语言具有功能强大和简单易用两个特征,使得很多桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序都是采用JAVA语言进行编写。
随着应用程序的更新升级,新功能的堆叠,使得现阶段JAVA安装包的大小普遍以G为单位,导致JAVA安装包不便于下载传输,占用电子设备大量的内容空间,增大运行内容的开销,导致用户体验低下。
因此,如何提供一种JAVA安装包管理方法,实现提升JAVA安装包的压缩率,进而提升用户体验,成为一个亟待解决的问题。
发明内容
本发明要解决的技术问题,在于提供一种JAVA安装包管理方法,实现提升JAVA安装包的压缩率,进而提升用户体验。
本发明是这样实现的:一种JAVA安装包管理方法,包括如下步骤:
步骤S10、服务器将JAVA安装包划分为共享数据包和差异数据包;
步骤S20、终端基于服务器发送的所述共享数据包生成本地共享数据包;
步骤S30、终端从服务器下载所述差异数据包;
步骤S40、终端基于硬连接技术整合所述本地共享数据包和差异数据包,得到JAVA安装包并运行。
进一步地,所述步骤S10具体为:
服务器将各版本的JAVA安装包分别进行平行解压得到若干个JAVA子文件,基于各所述JAVA子文件是否存在重复的文件,归类为重复JAVA子文件集以及不重复JAVA子文件集;
将所述重复JAVA子文件集内的JAVA子文件删除重复项后打包为共享数据包,将所述不重复JAVA子文件集内的JAVA子文件打包为差异数据包。
进一步地,所述步骤S10还包括:
标记所述共享数据包以及差异数据包的版本号。
进一步地,所述共享数据包以及差异数据包的版本号一一对应。
进一步地,所述步骤S20具体为:
终端创建一更新列表;终端接收服务器发送的各版本的所述共享数据包,将各所述共享数据包的JAVA子文件删除重复项后生成本地共享数据包,并将各版本的所述共享数据包的JAVA子文件的文件名记录在更新列表内。
进一步地,所述步骤S30具体为:
终端从服务器下载本地需要安装的各版本的所述差异数据包。
进一步地,所述步骤S40具体为:
终端基于所述更新列表,将各版本所述差异数据包需要的JAVA子文件通过硬连接技术从本地共享数据包中映射过来,得到JAVA安装包并运行。
本发明的优点在于:
1、通过服务器将JAVA安装包中重复的JAVA子文件删除重复项后打包为共享数据包,其余的JAVA子文件打包为差异数据包,终端接收并维护服务器的共享数据包,当JAVA安装包有更新时,只需要从服务器下载差异数据包即可,极大的减少了传输的数据量(可减少95%的数据量),极大的减少了终端存储空间的占用量;且终端仅保存各版本共享数据包全量且不重复的数据(本地共享数据包),并维护一用于记录各版本共享数据包内JAVA子文件的文件名的更新列表,不管下载哪个版本的差异数据包均能利用更新列表从本地共享数据包找到需要的JAVA子文件,减小了运行内容的开销,即最终极大的提升了JAVA安装包的压缩率,进而极大的提升了用户体验。
2、通过硬连接技术将本地共享数据包的JAVA子文件映射给各版本的差异数据包,即使本地共享数据包被删除也不影响各版本差异数据包的安装运行,且使得终端仅需保存各版本共享数据包全量且不重复的数据,不必每个版本的共享数据包均进行全量保存,不仅极大的提升了JAVA安装包运行的稳定性,也减小了运行内容的开销。
附图说明
下面参照附图结合实施例对本发明作进一步的说明。
图1是本发明一种JAVA安装包管理方法的流程图。
具体实施方式
本申请实施例中的技术方案,总体思路如下:通过服务器将JAVA安装包中重复的JAVA子文件删除重复项后打包为共享数据包,其余的JAVA子文件打包为差异数据包,终端接收并维护服务器的共享数据包,当JAVA安装包有更新时,只需要从服务器下载对应的差异数据包即可,需要进行安装运行时,通过硬连接技术将本地共享数据包的JAVA子文件映射给各版本的差异数据包即可,以提升JAVA安装包的压缩率,进而提升用户体验。
请参照图1所示,本发明一种JAVA安装包管理方法的较佳实施例之一,包括如下步骤:
步骤S10、服务器将JAVA安装包划分为共享数据包和差异数据包;
步骤S20、终端基于服务器发送的所述共享数据包生成本地共享数据包;
步骤S30、终端从服务器下载所述差异数据包;
步骤S40、终端基于硬连接技术整合所述本地共享数据包和差异数据包,得到JAVA安装包并运行。
硬连接的作用是允许一个文件拥有多个有效路径名,这样用户就可以建立硬连接到重要文件,以防止“误删”。因为对应目录的索引节点有一个以上的连接,只删除一个连接并不影响索引节点本身和其它的连接,只有当最后一个连接被删除后,文件的数据块及目录的连接才会被释放,也就是说,文件真正删除的条件是与之相关的所有硬连接文件均被删除。
所述步骤S10具体为:
服务器将各版本的JAVA安装包分别进行平行解压得到若干个JAVA子文件,基于各所述JAVA子文件是否存在重复的文件,归类为重复JAVA子文件集以及不重复JAVA子文件集;其中,将各版本的JAVA安装包可为同个应用程序的不同版本,也可为不同的应用程序;
将所述重复JAVA子文件集内的JAVA子文件删除重复项后打包为共享数据包,将所述不重复JAVA子文件集内的JAVA子文件打包为差异数据包。由于JAVA安装包内的JAVA子文件很多是重复的,通过删除重复项,能够极大的提升压缩率。
所述步骤S10还包括:
标记所述共享数据包以及差异数据包的版本号。
所述共享数据包以及差异数据包的版本号一一对应。
所述步骤S20具体为:
终端创建一更新列表;终端接收服务器发送的各版本的所述共享数据包,将各所述共享数据包的JAVA子文件删除重复项后生成本地共享数据包,即本地保存各所述共享数据包全量且不重复的数据,并将各版本的所述共享数据包的JAVA子文件的文件名记录在更新列表内。所述更新列表还记录共享数据包与差异数据包版本号的对应关系、各版本JAVA安装包所需的所有JAVA子文件的文件名以及文件结构。
所述步骤S30具体为:
终端从服务器下载本地需要安装的各版本的所述差异数据包。
所述步骤S40具体为:
终端基于所述更新列表,将各版本所述差异数据包需要的JAVA子文件通过硬连接技术从本地共享数据包中映射过来,得到JAVA安装包并运行。
本发明一种JAVA安装包管理方法的较佳实施例之二,包括如下步骤:
步骤S10、服务器将JAVA安装包A划分为共享数据包A和差异数据包A;将JAVA安装包B划分为共享数据包B和差异数据包B;
标记所述共享数据包A的版本号为AG1.0、差异数据包A的版本号为AC1.0、共享数据包B的版本号为BG1.0、差异数据包B的版本号为BC1.0,且AG1.0与AC1.0对应,BG1.0与BC1.0对应;
JAVA安装包A:{a1,a1,a1,a2,a2,a3,a4,b1,b1};
共享数据包A:{a1,a2,b1};
差异数据包A:{a3,a4};
JAVA安装包B:{b1,b1,b1,b2,b2,b3,b3,b5,b6};
共享数据包B:{b1,b2,b3};
差异数据包B:{b5,b6};
步骤S20、终端创建一更新列表;终端接收服务器发送共享数据包A以及共享数据包B,本地保存为{a1,a2,b2,b3},并更新所述更新列表:
Figure BDA0002807423160000051
步骤S30、终端从服务器下载差异数据包A以及差异数据包B;
步骤S40、终端基于所述更新列表,将差异数据包A需要的{a1,a2,b1}从本地共享数据包{a1,a2,b2,b3}中映射过来,得到{a1,a1,a1,a2,a2,a3,a4,b1,b1}并运行;将差异数据包B需要的{b1,b2,b3}从本地共享数据包{a1,a2,b2,b3}中映射过来,得到{b1,b1,b1,b2,b2,b3,b3,b5,b6}并运行。
综上所述,本发明的优点在于:
1、通过服务器将JAVA安装包中重复的JAVA子文件删除重复项后打包为共享数据包,其余的JAVA子文件打包为差异数据包,终端接收并维护服务器的共享数据包,当JAVA安装包有更新时,只需要从服务器下载差异数据包即可,极大的减少了传输的数据量(可减少95%的数据量),极大的减少了终端存储空间的占用量;且终端仅保存各版本共享数据包全量且不重复的数据(本地共享数据包),并维护一用于记录各版本共享数据包内JAVA子文件的文件名的更新列表,不管下载哪个版本的差异数据包均能利用更新列表从本地共享数据包找到需要的JAVA子文件,减小了运行内容的开销,即最终极大的提升了JAVA安装包的压缩率,进而极大的提升了用户体验。
2、通过硬连接技术将本地共享数据包的JAVA子文件映射给各版本的差异数据包,即使本地共享数据包被删除也不影响各版本差异数据包的安装运行,且使得终端仅需保存各版本共享数据包全量且不重复的数据,不必每个版本的共享数据包均进行全量保存,不仅极大的提升了JAVA安装包运行的稳定性,也减小了运行内容的开销。
虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。

Claims (7)

1.一种JAVA安装包管理方法,其特征在于:包括如下步骤:
步骤S10、服务器将JAVA安装包划分为共享数据包和差异数据包;
步骤S20、终端基于服务器发送的所述共享数据包生成本地共享数据包;
步骤S30、终端从服务器下载所述差异数据包;
步骤S40、终端基于硬连接技术整合所述本地共享数据包和差异数据包,得到JAVA安装包并运行。
2.如权利要求1所述的一种JAVA安装包管理方法,其特征在于:所述步骤S10具体为:
服务器将各版本的JAVA安装包分别进行平行解压得到若干个JAVA子文件,基于各所述JAVA子文件是否存在重复的文件,归类为重复JAVA子文件集以及不重复JAVA子文件集;
将所述重复JAVA子文件集内的JAVA子文件删除重复项后打包为共享数据包,将所述不重复JAVA子文件集内的JAVA子文件打包为差异数据包。
3.如权利要求1所述的一种JAVA安装包管理方法,其特征在于:所述步骤S10还包括:
标记所述共享数据包以及差异数据包的版本号。
4.如权利要求3所述的一种JAVA安装包管理方法,其特征在于:所述共享数据包以及差异数据包的版本号一一对应。
5.如权利要求1所述的一种JAVA安装包管理方法,其特征在于:所述步骤S20具体为:
终端创建一更新列表;终端接收服务器发送的各版本的所述共享数据包,将各所述共享数据包的JAVA子文件删除重复项后生成本地共享数据包,并将各版本的所述共享数据包的JAVA子文件的文件名记录在更新列表内。
6.如权利要求1所述的一种JAVA安装包管理方法,其特征在于:所述步骤S30具体为:
终端从服务器下载本地需要安装的各版本的所述差异数据包。
7.如权利要求5所述的一种JAVA安装包管理方法,其特征在于:所述步骤S40具体为:
终端基于所述更新列表,将各版本所述差异数据包需要的JAVA子文件通过硬连接技术从本地共享数据包中映射过来,得到JAVA安装包并运行。
CN202011373244.6A 2020-11-30 2020-11-30 一种java安装包管理方法 Active CN112612504B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011373244.6A CN112612504B (zh) 2020-11-30 2020-11-30 一种java安装包管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011373244.6A CN112612504B (zh) 2020-11-30 2020-11-30 一种java安装包管理方法

Publications (2)

Publication Number Publication Date
CN112612504A true CN112612504A (zh) 2021-04-06
CN112612504B CN112612504B (zh) 2022-06-17

Family

ID=75228118

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011373244.6A Active CN112612504B (zh) 2020-11-30 2020-11-30 一种java安装包管理方法

Country Status (1)

Country Link
CN (1) CN112612504B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100325093A1 (en) * 2009-06-19 2010-12-23 International Business Machines Corporation Apparatus and method to sequentially deduplicate groups of files comprising the same file name but different file version numbers
CN102325189A (zh) * 2011-09-19 2012-01-18 江苏省邮电规划设计院有限责任公司 嵌入式系统的数据远程升级方法
CN102833350A (zh) * 2012-09-11 2012-12-19 优视科技有限公司 WebApp更新的处理方法和处理装置
CN105808284A (zh) * 2014-12-31 2016-07-27 广州市动景计算机科技有限公司 一种增量升级方法及应用其的服务器
CN106528086A (zh) * 2016-10-10 2017-03-22 广州视源电子科技股份有限公司 一种安卓软件升级的方法及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100325093A1 (en) * 2009-06-19 2010-12-23 International Business Machines Corporation Apparatus and method to sequentially deduplicate groups of files comprising the same file name but different file version numbers
CN102325189A (zh) * 2011-09-19 2012-01-18 江苏省邮电规划设计院有限责任公司 嵌入式系统的数据远程升级方法
CN102833350A (zh) * 2012-09-11 2012-12-19 优视科技有限公司 WebApp更新的处理方法和处理装置
CN105808284A (zh) * 2014-12-31 2016-07-27 广州市动景计算机科技有限公司 一种增量升级方法及应用其的服务器
CN106528086A (zh) * 2016-10-10 2017-03-22 广州视源电子科技股份有限公司 一种安卓软件升级的方法及系统

Also Published As

Publication number Publication date
CN112612504B (zh) 2022-06-17

Similar Documents

Publication Publication Date Title
JP4891094B2 (ja) バーチャル・ファイル・システム
US7139894B1 (en) System and methods for sharing configuration information with multiple processes via shared memory
US11277498B2 (en) Method, apparatus and system for processing data
US6167407A (en) Backtracked incremental updating
US8050663B2 (en) System and method of providing contents for mobile communication terminal
KR20090035044A (ko) 네트워크에서의 생성자와 콘텐츠 서버 간의 업데이트 패키지 전송을 위한 업데이트 패키지 카탈로그
US20040034853A1 (en) Mobile download system
US20050021669A1 (en) System and method for incremental and reversible data migration and feature deployment
US20050262502A1 (en) Product packaging and installation mechanism
CN101977217A (zh) Widget更新方法、系统、Widget客户端及Widget服务器
CN107483631B (zh) 一种控制缓存实现移动互联网络服务访问的方法
CN105446975A (zh) 一种文件打包方法及装置
CN112925551A (zh) 对象升级方法、装置、设备和存储介质
CN112612504B (zh) 一种java安装包管理方法
CN111338717B (zh) 接口调用方法、应用程序升级方法及服务器和客户端
WO2011088757A1 (zh) 建立目录组织结构的方法、装置及数字电视前端服务器
US6959309B2 (en) Interface between programming languages and method therefor
CN111294397A (zh) npm包管理方法、装置、电子设备及存储介质
CN111447279B (zh) 服务器及接口解析服务包生成方法
CN115687474A (zh) 一种面向PoW区块链的跨链验证系统
CN114237681A (zh) 基于逆向差分逻辑的文件差分升级方法及其系统
CN115202934A (zh) 数据备份的方法、装置、设备及存储介质
CN114338395A (zh) 一种c/s通信网管方法、存储介质、电子设备及系统
CN113900991A (zh) 数据交互方法、装置、设备及存储介质
CN112416386A (zh) 软件升级的方法、装置、系统以及介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant