CN113467790A - 软件打包方法、装置及可读存储介质 - Google Patents

软件打包方法、装置及可读存储介质 Download PDF

Info

Publication number
CN113467790A
CN113467790A CN202110694044.9A CN202110694044A CN113467790A CN 113467790 A CN113467790 A CN 113467790A CN 202110694044 A CN202110694044 A CN 202110694044A CN 113467790 A CN113467790 A CN 113467790A
Authority
CN
China
Prior art keywords
file
software
packaging
target
folder
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
CN202110694044.9A
Other languages
English (en)
Other versions
CN113467790B (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.)
Longxin Zhongke Taiyuan Technology Co ltd
Original Assignee
Longxin Zhongke Taiyuan 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 Longxin Zhongke Taiyuan Technology Co ltd filed Critical Longxin Zhongke Taiyuan Technology Co ltd
Priority to CN202110694044.9A priority Critical patent/CN113467790B/zh
Publication of CN113467790A publication Critical patent/CN113467790A/zh
Application granted granted Critical
Publication of CN113467790B publication Critical patent/CN113467790B/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/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Abstract

本发明实施例提供了一种软件打包方法、装置及可读存储介质。该打包方法包括:确定用户通过打包软件的图形界面选择的目标软件的文件夹、主程序文件的文件名、以及图标的存储路径,并获取用户通过图形界面输入的目标软件的属性信息,接收用户对图形界面上的目标控件的选择操作,响应于选择操作,基于主程序文件的文件名、图标的存储路径和属性信息,将文件夹打包为目标安装包,从而实现使用者仅需通过打包软件的图形界面选择目标软件的文件夹、主程序文件、图标以及填写少量的属性信息,即可一键生成目标安装包,从而简化了打包过程,节省了软件开发人员的精力和时间,提高了打包效率。

Description

软件打包方法、装置及可读存储介质
技术领域
本发明涉及计算机技术领域,特别是涉及一种软件打包方法、装置及可读存储介质。
背景技术
在开发完成任一款Linux软件后,一般都需要将开发好的软件打包成某种格式的安装包,方便分发和安装。
其中,将开发好的软件打包成红帽包管理器(RPM,redhat package manager)格式的安装包是最流行的格式之一。传统的RPM打包方式是在Linux命令行中调用一系列相关命令实现的,并且调用打包命令前还需要编写复杂的配置文件,整个打包过程繁琐复杂。
发明内容
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种软件打包方法、装置及可读存储介质。
本发明的第一方面,提供了一种软件打包方法,该方法包括:
确定用户通过打包软件的图形界面选择的目标软件的文件夹、主程序文件的文件名、以及图标的存储路径,并获取所述用户通过所述图形界面输入的所述目标软件的属性信息;其中,所述文件夹包括所述目标软件的库文件、可执行文件和资源文件,所述属性信息包括所述目标软件的软件名称、版本号和发行号;
接收所述用户对所述图形界面上的目标控件的选择操作;
响应于所述选择操作,基于所述主程序文件的文件名、所述图标的存储路径和所述属性信息,将所述文件夹打包为目标安装包。
本发明的第二方面,提供了一种打包装置,该装置包括:
获取模块,用于确定用户通过打包软件的图形界面选择的目标软件的文件夹、主程序文件的文件名、以及图标的存储路径,并获取所述用户通过所述图形界面输入的所述目标软件的属性信息;其中,所述文件夹包括所述目标软件的库文件、可执行文件和资源文件,所述属性信息包括所述目标软件的软件名称、版本号和发行号;
接收模块,用于接收所述用户对所述图形界面上的目标控件的选择操作;
打包模块,用于响应于所述选择操作,基于所述主程序文件的文件名、所述图标的存储路径和所述属性信息,将所述文件夹打包为目标安装包。
本发明的第三方面,提供了一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上任一所述的软件打包方法的步骤。
本发明的第四方面,提供了一种打包装置,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上述任一项所述的软件打包方法的步骤。
本发明实施例包括以下优点:
本发明实施例软件打包方法、装置及可读存储介质,通过确定用户通过打包软件的图形界面选择的目标软件的文件夹、主程序文件的文件名、以及图标的存储路径,并获取用户通过图形界面输入的目标软件的属性信息,接收用户对图形界面上的目标控件的选择操作,响应于选择操作,基于主程序文件的文件名、图标的存储路径和属性信息,将文件夹打包为目标安装包,从而实现使用者仅需通过打包软件的图形界面选择目标软件的文件夹、主程序文件、图标以及填写少量的属性信息,即可基于主程序文件、图标和属性信息,一键生成目标安装包,从而简化了打包过程,减轻了开发人员将目标软件打包成RPM格式的目标安装包的工作量,节省了软件开发人员的精力和时间,提高了打包效率。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为本发明实施例提供的一种软件打包方法的步骤流程图;
图2为本发明实施例提供的另一种软件打包方法的步骤流程图;
图3为本发明实施例提供的一种打包装置的结构示意图;
图4为本发明实施例所提供的另一种打包装置的结构示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
应当理解,此处所描述的具体实施例仅用以解释本发明,仅仅是本发明一部分实施例,而不是全部的实施例,并不用于限定本发明。
为了更清楚理解本发明实施例提供的软件打包方法,在此先介绍现有技术中提供的打包过程,需要说明的是,在执行打包过程之前,开发者已经新建了一个目标软件的文件夹,并已将该目标软件的可执行文件以及相关的资源文件都放到了该文件夹中,该目标软件指即将被打包成RPM包的软件。
现有技术提供的打包过程如下:
首先复制目标软件所依赖的库文件。在Linux命令行中调用ldd命令,将欲打包软件所依赖的库文件找到,然后将这些库文件复制到欲打包软件的文件夹中。
其次,手动编写启动脚本文件、手动编写桌面图标文件、新建打包工作目录。其中,手动编写启动脚本文件需要在该启动脚本文件中指定目标软件安装后所依赖的库文件的路径,以及该目标软件的主程序文件的路径。手动编写桌面图标文件。在该桌面图标文件中指定目标软件的软件名称、安装后的启动脚本文件的路径、安装后的图标的路径。新建打包工作目录。在当前用户的主目录下新建rpmbuild文件夹,再在该文件夹下新建6个子文件夹,名称分别为BUILD、BUILDROOT、RPMS、SOURCES、SPECS、SRPMS。
新建打包工作目录后,将目标软件的文件夹移动到BUILD文件夹中。
之后手动编写软件包描述文件,也即编写spec文件,并将该spec文件放到SPECS文件夹中。spec文件是一种比较复杂的配置文件,这里至少需要6部分:头信息、%description、%install、%post、%postun、%files。其中头信息必须包含的有:软件名称、版本号、发行号、摘要、许可协议。%description部分是对该软件的介绍。%install部分是安装软件的具体过程,主要是要说明每个文件将要安装到什么路径下。其中桌面图标文件一定要放在系统指定的目录下,一般是/usr/share/applications中,这样安装后在开始菜单中才能看到该软件。%post部分是安装后要执行的脚本,一般这里只需要将桌面图标文件复制到当前用户的桌面上一份,方便用户通过桌面图标打开软件。%postun部分是卸载后执行的脚本,一般在这里将该软件的桌面图标删除。%files部分是将需要打包到RPM包中的文件列出来。其中,桌面图标文件的后缀名例如为.desktop。
最后调用rpmbuild命令,以基于软件包描述文件,生成目标软件的RPM安装包文件。
由于现有技术的打包过程需要手动操作,导致现有技术的整个打包过程比较繁琐,且手工操作容易出错。
为了解决上述技术问题,本发明实施例提供了一种软件打包方法。参照图1,图1为本发明实施例提供的一种软件打包方法的步骤流程图,该方法可以执行于计算机设备,该软件打包方法可以包括以下的步骤101、步骤102和步骤103,具体为:
步骤101、确定用户通过打包软件的图形界面选择的目标软件的文件夹、主程序文件的文件名和图标的存储路径,并获取用户通过图形界面输入的目标软件的属性信息。
其中,文件夹包括目标软件的库文件、可执行文件和资源文件,属性信息包括目标软件的软件名称、版本号和发行号。资源文件例如包括图片、配置文件、音频文件、视频文件等。
用户可以双击桌面上的打包软件的软件图标,以启动该打包软件。启动打包软件后,可以通过该打包软件的图形界面选择目标软件的文件夹、主程序文件和图标,用户要根据目标软件的文件夹的存储路径选择目标软件的文件夹,根据主程序文件的存储路径选择主程序文件,以及根据图标的存储路径选择图标,用户选择完目标软件的文件夹、主程序文件和图标后,即可以确定用户选择的目标软件的文件夹、主程序文件的文件名及图标的存储路径。用户并通过打包软件的图形界面填写目标软件的软件名称、版本号、发行号,用户选择目标软件的文件夹、主程序文件和图标,以及填写目标软件的软件名称、版本号、发行号之后,计算机设备可以获取到用户选择的目标软件的文件夹、主程序文件和图标,以及获取到用户填写的目标软件的软件名称、版本号、发行号。
步骤102、接收用户对图形界面上的目标控件的选择操作。
步骤103、响应于选择操作,基于主程序文件的文件名、图标的存储路径和属性信息,将文件夹打包为目标安装包。
其中,步骤102中的目标控件可以为打包软件的图形界面上的“打包”按钮。用户选择目标软件的文件夹、主程序文件和图标,以及填写目标软件的软件名称、版本号、发行号之后,用户可以通过点击打包软件的图形界面上的“打包”按钮,计算机设备接收到用户点击“打包”按钮的选择操作后,响应于该选择操作,基于主程序文件的文件名、图标的存储路径和属性信息,将包括目标软件的库文件、可执行文件和资源文件的文件夹打包为RPM格式的安装包,从而实现自动打包。其中,目标安装包包括RPM格式的安装包。
本实施例提供的软件打包方法,通过确定用户通过打包软件的图形界面选择的目标软件的文件夹、主程序文件的文件名、以及图标的存储路径,并获取用户通过图形界面输入的目标软件的属性信息,接收用户对图形界面上的目标控件的选择操作,响应于选择操作基于主程序文件的文件名、图标的存储路径和属性信息,将文件夹打包为目标安装包,从而实现使用者仅需通过打包软件的图形界面选择目标软件的文件夹、主程序文件、图标以及填写少量的属性信息,即可基于主程序文件、图标和属性信息,一键生成目标安装包,从而简化了打包过程,减轻了开发人员将目标软件打包成RPM格式的目标安装包的工作量,节省了软件开发人员的精力和时间,提高了打包效率。
参照图2,图2为本发明实施例提供的另一种软件打包方法的步骤流程图,该方法为用户对图形界面上的目标控件执行选择操作后,自动执行打包的过程。该方法包括如下步骤:
步骤201、通过打包软件调用目标命令,将目标软件的库文件复制到文件夹。
现有技术中,是通过在Linux命令行中手动输入命令,以调用ldd命令,并将目标软件所依赖的库文件找到,然后将这些库文件复制到欲打包软件的文件夹中。而本实施例中可以通过打包软件调用目标命令,目标命令可以包括ldd命令,以通过ldd命令目标软件所依赖的库文件找到,然后将这些库文件复制到目标软件的文件夹中,从而无需人工手动输入命令,从而节省了开发人员的精力和时间。
需要说明的是,在通过打包软件调用目标命令,将目标软件的库文件复制到文件夹之前,软件开发者已经新建了一个目标软件的文件夹,并已将目标软件的可执行文件以及相关的资源文件都放到了该文件夹中。也即软件开发者新建一个目标软件的文件夹,并将目标软件的可执行文件以及相关的资源文件都放到了该文件夹中,之后才通过打包软件调用目标命令,以将目标软件的库文件复制到该文件夹。
步骤202、基于主程序文件的文件名,生成目标软件的启动脚本文件。
其中,基于主程序文件,生成目标软件的启动脚本文件可以通过如下步骤实现:
基于主程序文件的文件名和第一模板文件,生成启动脚本文件。
需要说明的是,本发明实施例中用到了通过模板文件生成文件的技术,模板文件本身是一个文本文件,里面包含了一些特殊符号,这些特殊符号相当于变量,在打包时,将这些特殊符号替换为实际的值即可生成相应的文件。
例如,第一模板文件中设置了一个用于表示主程序文件的文件名的变量@exeName,采用目标软件的主程序文件的文件名替换第一模板文件中的该变量,从而生成目标软件的启动脚本文件。
现有技术中为若需要对目标软件进行打包,需要手动编写启动脚本文件,因此,比较耗时耗力且容易出错。而本实施例中通过自动生成启动脚本文件,从而节省了开发人员的精力和时间,且不易出错。
步骤203、基于图标的存储路径、启动脚本文件的文件路径、以及软件名称,生成目标软件的桌面图标文件。
其中,基于图标的存储路径、启动脚本文件的文件路径、以及软件名称,生成目标软件的桌面图标文件,可以通过如下步骤实现:
基于存储路径、启动脚本文件的文件路径、软件名称和第二模板文件,生成桌面图标文件。
第二模板文件中设置了用于表示软件名称的变量@softwareName、用于表示启动脚本文件的文件路径的变量@exePath、以及用于表示桌面图标的路径的变量@iconPath,采用目标软件的软件名称替换变量@softwareName,采用启动脚本文件的文件路径替换变量@exePath、以及采用目标软件的图标的存储路径替换@iconPath,从而生成目标软件的桌面图标文件。
步骤204、通过打包软件新建打包工作目录。
步骤205、通过打包软件将目标软件的文件夹移动到打包工作目录的第一子目录。
针对步骤204和步骤205,由于现有技术中为人工手动新建打包工作目录,以及通过人工操作经目标软件的文件夹移动到打包工作目录的第一子目录,而本实施例中为通过打包软件自动新建打包工作目录,并通过打包软件自动将目标软件的文件夹移动到打包工作目录的第一子目录,因此节省了开发人员的精力和时间。其中,第一子目录例如为目标文件夹下的BUILD文件夹。
步骤206、基于启动脚本文件、桌面图标文件、版本号、发行号,生成软件包描述文件。
其中,生成目标软件的启动脚本文件和桌面图标文件后,可以基于启动脚本文件、桌面图标文件、版本号、发行号,生成软件包描述文件。基于启动脚本文件、桌面图标文件、版本号、发行号,生成软件包描述文件具体可以通过如下步骤实现:
基于启动脚本文件、桌面图标文件、版本号、发行号和第三模板文件,生成软件包描述文件。
第三模板文件中设置了用于表示版本号Version的变量和发行号Release的变量,第三模板文件中还定义了打包目标软件之后,需要执行的安装操作,例如定义了需要将启动脚本文件安装到第三模本文件中设置的一个指定路径下,以及将桌面图标文件安装到第三模板文件中设置的另一个指定路径下。第三模板文件中还可以设置执行安装操作后执行的操作,例如将目标软件的图标放到桌面上。第三模板文件中还可以包括卸载目标软件后执行的操作,例如卸载目标软件后,将桌面上的目标软件的图标删除。
可选的,所述基于所述启动脚本文件、所述桌面图标文件、所述版本号、所述发行号和第三模板文件,生成软件包描述文件,可以通过如下步骤实现:
基于所述启动脚本文件、所述桌面图标文件、所述版本号、所述发行号和所述第三模板文件,在所述打包工作目录的第二子目录,生成所述软件包描述文件。
步骤207、基于软件包描述文件,将文件夹打包为目标安装包。
本实施例提供的软件打包方法,在用户对图形界面上的目标控件执行选择操作后,即开始打包过程,且整个打包过程无需开发人员手动干预,从而节省了开发人员的精力和时间,提高了打包效率。
参照图3,图3为本发明实施例提供的一种打包装置的结构示意图,本实施例提供的打包装置可以部署于计算机系统中,该打包装置包括:
获取模块310,用于确定用户通过打包软件的图形界面选择的目标软件的文件夹、主程序文件的文件名、以及图标的存储路径,并获取所述用户通过所述图形界面输入的所述目标软件的属性信息;其中,所述文件夹包括所述目标软件的库文件、可执行文件和资源文件,所述属性信息包括所述目标软件的软件名称、版本号和发行号;
接收模块320,用于接收所述用户对所述图形界面上的目标控件的选择操作;
打包模块330,用于响应于所述选择操作,基于所述主程序文件的文件名、所述图标的存储路径和所述属性信息,将所述文件夹打包为目标安装包。
本实施例提供的打包装置,通过确定用户通过打包软件的图形界面选择的目标软件的文件夹、主程序文件的文件名、以及图标的存储路径,并获取用户通过图形界面输入的目标软件的属性信息,接收用户对图形界面上的目标控件的选择操作,响应于选择操作,基于主程序文件的文件名、图标的存储路径和属性信息,将文件夹打包为目标安装包,从而实现使用者仅需通过打包软件的图形界面选择目标软件的文件夹、主程序文件、图标以及填写少量的属性信息,即可基于主程序文件、图标和属性信息,一键生成目标安装包,从而简化了打包过程,减轻了开发人员将目标软件打包成RPM格式的目标安装包的工作量,节省了软件开发人员的精力和时间。
可选的,所述打包模块330,包括:
第一生成单元,用于基于所述主程序文件的文件名,生成所述目标软件的启动脚本文件;
第二生成单元,用于基于所述图标的存储路径、所述启动脚本文件的文件路径、以及所述软件名称,生成所述目标软件的桌面图标文件;
第三生成单元,用于基于所述启动脚本文件、所述桌面图标文件、所述版本号、所述发行号,生成软件包描述文件;
打包单元,用于基于所述软件包描述文件,将所述文件夹打包为目标安装包。
可选的,所述第一生成单元,具体用于基于所述主程序文件的文件名和第一模板文件,生成所述启动脚本文件。
可选的,所述第二生成单元,具体用于基于所述存储路径、所述启动脚本文件的文件路径、所述软件名称和第二模板文件,生成所述桌面图标文件。
可选的,所述第三生成单元,具体用于基于所述启动脚本文件、所述桌面图标文件、所述版本号、所述发行号和第三模板文件,生成所述软件包描述文件。
可选的,所述打包模块330,还包括:
调用单元,用于通过所述打包软件调用目标命令,将所述目标软件的库文件复制到所述文件夹。
可选的,所述打包模块330,还包括:
新建单元,用于通过所述打包软件新建打包工作目录;
第一移动单元,用于通过所述打包软件将所述目标软件的文件夹移动到所述打包工作目录的第一子目录;
所述第三生成单元,具体用于基于所述启动脚本文件、所述桌面图标文件、所述版本号、所述发行号和所述第三模板文件,在所述打包工作目录的第二子目录,生成所述软件包描述文件。
另外,本发明实施例还提供一种打包装置,如图4所示,图4为本发明实施例所提供的另一种打包装置的结构示意图。该打包装置400包括处理器410,存储器420以及存储在存储器420上并可在处理器410上运行的计算机程序,该计算机程序被处理器410执行时实现上述实施例的软件打包方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述的软件打包方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,的计算机可读存储介质,可以为只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等。
本发明实施例还提供了一种计算机程序,该计算机程序可以存储在云端或本地的存储介质上。在该计算机程序被计算机或处理器运行时用于执行本发明实施例的软件打包方法的相应步骤,并且用于实现根据本发明实施例的打包装置中的相应模块。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (13)

1.一种软件打包方法,其特征在于,所述方法包括:
确定用户通过打包软件的图形界面选择的目标软件的文件夹、主程序文件的文件名、以及图标的存储路径,并获取所述用户通过所述图形界面输入的所述目标软件的属性信息;其中,所述文件夹包括所述目标软件的库文件、可执行文件和资源文件,所述属性信息包括所述目标软件的软件名称、版本号和发行号;
接收所述用户对所述图形界面上的目标控件的选择操作;
响应于所述选择操作,基于所述主程序文件的文件名、所述图标的存储路径和所述属性信息,将所述文件夹打包为目标安装包。
2.根据权利要求1所述的方法,其特征在于,所述基于所述主程序文件的文件名、所述图标的存储路径和所述属性信息,将所述文件夹打包为目标安装包,包括:
基于所述主程序文件的文件名,生成所述目标软件的启动脚本文件;
基于所述图标的存储路径、所述启动脚本文件的文件路径、以及所述软件名称,生成所述目标软件的桌面图标文件;
基于所述启动脚本文件、所述桌面图标文件、所述版本号、所述发行号,生成软件包描述文件;
基于所述软件包描述文件,将所述文件夹打包为目标安装包。
3.根据权利要求2所述的方法,其特征在于,所述基于所述主程序文件的文件名,生成所述目标软件的启动脚本文件,包括:
基于所述主程序文件的文件名和第一模板文件,生成所述启动脚本文件。
4.根据权利要求2所述的方法,其特征在于,所述基于所述图标的存储路径、所述启动脚本文件的文件路径和所述软件名称,生成所述目标软件的桌面图标文件,包括:
基于所述存储路径、所述启动脚本文件的文件路径、所述软件名称和第二模板文件,生成所述桌面图标文件。
5.根据权利要求2所述的方法,其特征在于,所述基于所述启动脚本文件、所述桌面图标文件、所述版本号、所述发行号,生成软件包描述文件,包括:
基于所述启动脚本文件、所述桌面图标文件、所述版本号、所述发行号和第三模板文件,生成所述软件包描述文件。
6.根据权利要求2或3所述的方法,其特征在于,在所述基于所述主程序文件,生成所述目标软件的启动脚本文件之前,还包括:
通过所述打包软件调用目标命令,将所述目标软件的库文件复制到所述文件夹。
7.根据权利要求5所述的方法,其特征在于,在所述基于所述图标和所述软件名称,生成所述目标软件的桌面图标文件之后,还包括:
通过所述打包软件新建打包工作目录;
通过所述打包软件将所述目标软件的文件夹移动到所述打包工作目录的第一子目录;
所述基于所述启动脚本文件、所述桌面图标文件、所述版本号、所述发行号和第三模板文件,生成软件包描述文件,包括:
基于所述启动脚本文件、所述桌面图标文件、所述版本号、所述发行号和所述第三模板文件,在所述打包工作目录的第二子目录,生成所述软件包描述文件。
8.一种软件打包装置,其特征在于,所述装置包括:
获取模块,用于确定用户通过打包软件的图形界面选择的目标软件的文件夹、主程序文件的文件名、以及图标的存储路径,并获取所述用户通过所述图形界面输入的所述目标软件的属性信息;其中,所述文件夹包括所述目标软件的库文件、可执行文件和资源文件,所述属性信息包括所述目标软件的软件名称、版本号和发行号;
接收模块,用于接收所述用户对所述图形界面上的目标控件的选择操作;
打包模块,用于响应于所述选择操作,基于所述主程序文件的文件名、所述图标的存储路径和所述属性信息,将所述文件夹打包为目标安装包。
9.根据权利要求8所述的装置,其特征在于,所述打包模块,包括:
第一生成单元,用于基于所述主程序文件的文件名,生成所述目标软件的启动脚本文件;
第二生成单元,用于基于所述的存储路径、所述启动脚本文件的文件路径、以及所述软件名称,生成所述目标软件的桌面图标文件;
第三生成单元,用于基于所述启动脚本文件、所述桌面图标文件、所述版本号、所述发行号,生成软件包描述文件;
打包单元,用于基于所述软件包描述文件,将所述文件夹打包为目标安装包。
10.根据权利要求9或10所述的装置,其特征在于,所述打包模块,还包括:
调用单元,用于通过所述打包软件调用目标命令,将所述目标软件的库文件复制到所述文件夹。
11.根据权利要求9所述的装置,其特征在于,所述打包模块,还包括:
新建单元,用于通过所述打包软件新建打包工作目录;
第一移动单元,用于通过所述打包软件将所述目标软件的文件夹移动到所述打包工作目录;
所述第三生成单元,具体用于基于所述启动脚本文件、所述桌面图标文件、所述版本号、所述发行号和所述第三模板文件,在所述打包工作目录的第二子目录,生成所述软件包描述文件。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的软件打包方法的步骤。
13.一种打包装置,其特征在于,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至7中任一项所述的软件打包方法的步骤。
CN202110694044.9A 2021-06-22 2021-06-22 软件打包方法、装置及可读存储介质 Active CN113467790B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110694044.9A CN113467790B (zh) 2021-06-22 2021-06-22 软件打包方法、装置及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110694044.9A CN113467790B (zh) 2021-06-22 2021-06-22 软件打包方法、装置及可读存储介质

Publications (2)

Publication Number Publication Date
CN113467790A true CN113467790A (zh) 2021-10-01
CN113467790B CN113467790B (zh) 2023-04-07

Family

ID=77869355

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110694044.9A Active CN113467790B (zh) 2021-06-22 2021-06-22 软件打包方法、装置及可读存储介质

Country Status (1)

Country Link
CN (1) CN113467790B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115935399A (zh) * 2023-01-05 2023-04-07 南通昌硕信息科技有限公司 一种基于人工智能的手机app打包处理系统
CN116738898A (zh) * 2023-05-04 2023-09-12 合芯科技(苏州)有限公司 一种快速勾选机构图的方法、装置、设备及存储介质

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6117187A (en) * 1997-09-30 2000-09-12 Hewlett-Packard Company Automatic generation of a software installation package
US20070271552A1 (en) * 2006-05-19 2007-11-22 Pulley Robert A System and method for packaging software
US20080141243A1 (en) * 2006-12-08 2008-06-12 Electronic Data Systems Corporation System and method for generating a distributable software package
US20080320468A1 (en) * 2007-06-22 2008-12-25 Ferris James M Standardized Software Application Configuration
WO2010097688A1 (en) * 2009-02-24 2010-09-02 David Semeria System and method for the generation of applications by means of a computer network
CN108616384A (zh) * 2018-03-26 2018-10-02 山东昭元信息科技有限公司 一种集中式的服务管理部署工具及方法
CN110727440A (zh) * 2019-10-08 2020-01-24 中国电子科技集团公司第二十八研究所 一种软件封装方法
CN110737459A (zh) * 2019-10-18 2020-01-31 浪潮软件集团有限公司 一种Linux RPM安装包快速定制方法
CN111459541A (zh) * 2020-04-09 2020-07-28 武汉联影医疗科技有限公司 应用程序的打包方法、装置、计算机设备和存储介质
CN111880781A (zh) * 2020-07-29 2020-11-03 北京浪潮数据技术有限公司 一种rpm安装包的生成方法、装置、设备及存储介质

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6117187A (en) * 1997-09-30 2000-09-12 Hewlett-Packard Company Automatic generation of a software installation package
US20070271552A1 (en) * 2006-05-19 2007-11-22 Pulley Robert A System and method for packaging software
US20080141243A1 (en) * 2006-12-08 2008-06-12 Electronic Data Systems Corporation System and method for generating a distributable software package
US20080320468A1 (en) * 2007-06-22 2008-12-25 Ferris James M Standardized Software Application Configuration
WO2010097688A1 (en) * 2009-02-24 2010-09-02 David Semeria System and method for the generation of applications by means of a computer network
CN108616384A (zh) * 2018-03-26 2018-10-02 山东昭元信息科技有限公司 一种集中式的服务管理部署工具及方法
CN110727440A (zh) * 2019-10-08 2020-01-24 中国电子科技集团公司第二十八研究所 一种软件封装方法
CN110737459A (zh) * 2019-10-18 2020-01-31 浪潮软件集团有限公司 一种Linux RPM安装包快速定制方法
CN111459541A (zh) * 2020-04-09 2020-07-28 武汉联影医疗科技有限公司 应用程序的打包方法、装置、计算机设备和存储介质
CN111880781A (zh) * 2020-07-29 2020-11-03 北京浪潮数据技术有限公司 一种rpm安装包的生成方法、装置、设备及存储介质

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
MARSCATXDU_李经纬: ""RPM打包"", 《HTTPS://JUEJIN.CN/POST/6935975171211657252》 *
WWW.ZHBLOG.NET: ""为Linux打包生成桌面图标快捷方式"", 《HTTPS://WWW.ZHBLOG.NET/OS/LINUX-ICON-SHORTCUT.HTML》 *
余川江: ""网格中基于MapReduce应用的可视化系统的设计与实现"", 《中国优秀博硕士学位论文全文数据库(硕士) 信息科技辑》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115935399A (zh) * 2023-01-05 2023-04-07 南通昌硕信息科技有限公司 一种基于人工智能的手机app打包处理系统
CN116738898A (zh) * 2023-05-04 2023-09-12 合芯科技(苏州)有限公司 一种快速勾选机构图的方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN113467790B (zh) 2023-04-07

Similar Documents

Publication Publication Date Title
US9367305B1 (en) Automatic container definition
US9582268B2 (en) Automatic communications graphing for a source application
US11934811B2 (en) Container image building using dependency container images
CN113467790B (zh) 软件打包方法、装置及可读存储介质
CN108132826B (zh) 跨云服务器的镜像管理方法、装置及服务器
CN110752947A (zh) 一种k8s集群部署方法及装置,一种部署平台
CN108897547B (zh) 一种软件自动化部署方法及装置
EP3522005A1 (en) Method and apparatus for constructing mirror image
CN104182257B (zh) 应用软件的安装方法和应用软件的安装装置
US20150264198A1 (en) Automatic installation system and method, information processing apparatus, and image forming apparatus
US9672032B2 (en) Mobile enabled application
CN114706564B (zh) 软件包制作方法、装置、电子设备及存储介质
CN105117268A (zh) 一种实现linux系统自动安装的安装方法及系统
CN115658237A (zh) 一种容器应用自动部署方法、设备、装置、设备及介质
US9886272B1 (en) Transformation of a web application into a hybrid mobile application
CN107133067A (zh) 云平台部署方法及装置
CN112685040A (zh) 安卓系统中界面文件的生成方法、装置、设备及存储介质
CN114124739B (zh) 部署FreeSWITCH服务的方法、装置、电子设备及存储介质
KR20160143518A (ko) 화상 형성장치 및 어플리케이션의 삭제방법
CN114168188A (zh) 一种前端项目打包方法、装置、电子设备及存储介质
US20210232562A1 (en) Container-image reproduction and debugging
CN105094837A (zh) 引导计算机启动的方法、装置及启动引导介质的制作方法
CN112685051A (zh) 自动执行shell脚本的方法、装置、平台及存储介质
CN113342378B (zh) 一种基于文件系统更新的镜像生成方法、设备及介质
CN115981614B (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