一种程序部署方法及装置与流程

文档序号:22890305发布日期:2020-11-10 18:14阅读:132来源:国知局
一种程序部署方法及装置与流程

本发明涉及计算机技术领域,尤其涉及一种程序部署方法及装置。



背景技术:

现有技术中,在maven中程序代码部署的具体方法为:首先需要人为对终端操作将程序代码进行编译和打包形成war文件,并在得到war文件后,还需要人为对终端操作,再将war文件部署到服务器上。

此外,目前在程序代码部署的过程中,还需要涉及多次相关参数的输入,例如在程序代码部署的过程中,会在终端上弹出一个用户界面,需要在用户在该用户界面上输入服务器的互联网协议地址(internetprotocoladdress,ip)、用户名等相关参数。

综上所述,现有的程序代码的部署方法需要人为操作较多,程序代码部署的效率较低。



技术实现要素:

本申请实施例提供了一种程序部署方法及装置,通过设置配置文件来实现程序的编译、打包、部署一键完成,减少繁复的手动操作,保证程序部署的快捷、准确性,提高了程序部署的效率。

第一方面,本申请提供了一种程序部署方法,包括:终端接收针对程序代码的部署指令;所述终端响应于所述部署指令,对所述程序代码进行编译、打包得到程序文件;所述终端根据第一配置文件,将所述程序文件部署到至少一个远程服务器上;所述第一配置文件中包括至少一个远程服务器中每个远程服务器的用户名和登录密码。

本申请实施例中由于终端针对部署指令,连续对程序代码进行编译、打包、部署,并且,将部署时所需的参数写入所述第一配置文件中,部署时直接从所述第一配置文件读取所需的参数,从而减少繁复的手动操作,保证程序部署的快捷、准确性,提高了整个流程的效率。

可选的,所述第一配置文件为项目管理工具maven的配置文件。

可选的,所述程序文件为扩展名为war的文件。

可选的,所述终端响应于所述部署指令,对所述程序代码进行编译、打包得到程序文件,包括:所述终端响应于所述部署指令,对所述程序代码进行编译,并根据第二配置文件,对所述程序代码进行打包,得到所述程序文件;其中,所述第二配置文件包括所述至少一个远程服务器的地址。应用所述第二配置文件,对所述程序文件进行打包,可减少繁复的手动输入,保证程序打包的快捷、准确性。

可选的,所述第二配置文件为项目对象模型pom文件。

第二方面,本申请提供了一种程序部署装置,包括:

输入模块:用于终端接收针对程序代码的部署指令;

处理模块,用于响应于所述部署指令,对所述程序代码进行编译、打包得到程序文件,并根据第一配置文件,将所述程序文件部署到至少一个远程服务器上;所述第一配置文件中包括至少一个远程服务器中每个远程服务器的用户名和登录密码。

可选的,所述第一配置文件为项目管理工具maven的配置文件。

可选的,所述程序文件为扩展名为war的文件。

可选的,所述处理模块具体用于:

所述终端响应于所述部署指令,对所述程序代码进行编译,并根据第二配置文件,对所述程序代码进行打包,得到所述程序文件;其中,所述第二配置文件包括所述至少一个远程服务器的地址。

可选的,所述第二配置文件为项目对象模型pom文件。

第三方面,本申请实施例还提供了一种终端,包括存储器和处理器,其中,存储器存储有程序指令,处理器用于调用存储器存储的程序指令执行第一方面以及任一可选的实现方式中提供的方法。

第四方面,本申请实施例还提供了一种计算机存储介质,该计算机可读存储介质包括计算机程序,当计算机程序在计算机上运行时,使得所述计算机执行上述方法中第一方面以及任一可选的实现方式中提供的方法。

第五方面,本申请实施例还提供了一种包含指令的计算机程序产品,其中,当所述指令在计算机上运行时,使得所述计算机执行上述方法中第一方面以及任一可选的实现方式中提供的方法。

附图说明

图1为本申请实施例中程序部署方法的流程图;

图2为本申请实施例中程序部署装置的示意图;

图3为本申请实施例中程序部署终端的示意图。

具体实施方式

现有技术中程序代码在部署过程中存在需要手动上传文件至服务器,安装包过多,输入参数过多并且存在冗余,会造成整个程序代码部署过程繁复,易出错的问题。

有鉴于此,本申请实施例提供了一种程序部署方法,包括:终端接收针对程序代码的部署指令;并响应于部署指令,对程序代码进行编译、打包得到程序文件;然后根据第一配置文件,将程序文件部署到至少一个远程服务器上;第一配置文件中包括至少一个远程服务器中每个远程服务器的用户名和登录密码。通过设置第一配置文件来在远程服务器上部署程代码,与现有技术中采用手动部署的方式相比,有助于减少繁复的手动操作,提高程序代码部署的准确性和效率。

本申请实施例提供的程序部署方法在具体实现时可以为一个应用程序,也可以为集成在某一个应用程序中的一个功能模块,例如,本申请实施例提供的程序部署方法在具体实现时可以为集成在项目管理工具maven中的一个功能模块。

其中,maven是一个项目管理工具,它可以集成程序的编译、打包、部署功能,包含了一个项目对象模型(projectobjectmodel,pom)文件,当使用maven的时候,用一个pom文件来描述程序代码,maven可以基于pom文件实现程序代码的简单快速部署。

下面结合maven为例对本申请实施例进行详细的介绍。

以下对本申请中的一些名词进行解释,以便于本领域技术人员理解。

1、程序代码。程序代码又可以称之为程序、代码、项目代码等,对此不做限定。程序代码为用于实现一种或多种功能的代码。例如,本申请实施例中的程序文件可以是一个网站project下的所有源程序代码的集合,里面包含前端html/css/js/jsp等的程序代码,也包含编译java的程序代码。为了便于程序代码的测试和部署,需要将程序代码打包成程序文件。

2、第一配置文件。第一配置文件用于将打包得到的程序文件部署到远程服务器,可以包括至少一个远程服务器中每个远程服务器的用户名和登录密码,例如,在maven中,第一配置文件可以为maven的配置文件。例如,远程服务器为tomcat,第一配置文件包括tomcat的配置信息及maven的配置信息。

3、第二配置文件。第二配置文件为maven中pom文件,用于对程序代码进行打包,在第二配置文件中的参数,可以实现不同的打包策略。

示例的,如图1所示,为本申请实施例的一种程序部署的方法,具体包括以下步骤。

步骤101,终端接收针对程序代码的部署指令。

针对程序代码的部署指令可以为用户在maven的命令输出框中输入的指令,例如“mvndeploy、mvncompile、mvnpachage、mvninstall”,也可以为根据用户的操作产生的部署指令,例如用户的操作可以为用户对maven中用于部署程序代码的虚拟按键的点击或触摸操作等。

步骤102,终端响应于部署指令,对程序代码进行编译、打包得到程序文件。

在本申请实施例中,程序文件可以为war文件,也可以为jar文件,还可以为其它扩展名的文件。具体的,可以根据实际情况进行定义,对此不作限定。例如,在maven中,终端响应于部署指令,对程序代码进行编译、打包得到war文件。

示例的,终端响应于部署指令,可以基于下列方式对程序代码进行编译、打包得到程序文件:

终端响应于部署指令,对程序代码进行编译,然后根据第二配置文件,对程序代码进行打包,得到程序文件,第二配置文件中包括至少一个远程服务器的地址。

以第二配置文件为maven中的pom文件为例,对第二配置文件的具体配置方式进行相应的介绍。

例如,第二配置文件包括project标签、build标签和plugins标签。其中,project标签用于指示不同环境下对应的打包策略,bulid标签用于指示需要打包处理的程序代码;plugins标签用于指示打包后部署程序文件的至少一个远程服务器的地址。

例如,project标签用于指示开发环境对应的打包策略、测试环境对应的打包策略、生产环境对应的打包策略。

示例的,本申请实施例中可以通过以下方式在第二配置文件中配置project标签:

本申请实施例中,可以通过在第二配置文件中配置bulid标签确定需要打包处理的程序代码。例如,可以通过以下方式在第二配置文件中实现对bulid标签的配置:

第一个directory结合excludes是排除resources下对应第二配置文件,不对resources下对应第二配置文件打包;第二个directory表示指定目录中第二配置文件进行打包。

本申请实施例中,可以通过在第二配置文件中配置plugins标签对程序代码部署的服务器地址进行配置,然后,再对程序代码进行打包。例如,可以通过以下方式在第二配置文件中实现对plugins标签的配置:

程序代码编译打包完成后得到一个程序文件,例如,该程序文件为扩展名为war的文件,程序文件可以理解为web存档文件,应用此扩展名为war的文件,可减少传输文件所需要的时间。

步骤103,终端根据第一配置文件,将程序文件部署到至少一个远程服务器上;第一配置文件中包括至少一个远程服务器中每个远程服务器的用户名和登录密码。

在一些实施例中,第一配置文件为maven的配置文件,远程服务器为tomcat,第一配置文件包括至少一个tomcat中每个tomcat的用户名和登录密码。以至少一个tomcat中的一个tocmat为例,终端可以通过该tomcat的用户名和登录密码进行登录,从而可以将程序文件部署到该tomcat上。在另一些实施例中,终端根据该tomcat的用户名和登录密码登录到该tomcat后,还可以对tomcat内的应用进行启动、停止、部署以及卸载等。

可选的,本申请实施例中可以通过以下方式在maven配置文件中配置至少一个远程服务器中每个远程服务器的用户名和登录密码:

示例的,本申请实施例中maven配置文件可以设置在插件中,例如,该插件可以命名为tomcat7-maven-plugin,也可以命名为其它名称,本申请实施例对此不作限定。

例如,本申请实施例中可以通过以下方式在maven配置文件中设置远程服务器的用户名和登录密码:

再例如,第一配置文件还可以为根路径为\conf\tomcat-users.xml的文件。其中,上述文件的根路径、文件名等可用户根据需要自定义,不限于上述举例说明。

其中:manager-script可以用于实现对远程服务器内的应用进行启动、停止、部署以及卸载;manager-gui可以用于终端远程访问manager的管理页面。

上述各个实施例可以独立使用,也可以相互结合使用以实现不同的功能。

基于以上实施例,用于执行上述程序部署方法的装置一种可选的实现方式可以参阅图2所示,包括输入模块201和处理模块202;其中,输入模块201用于接收针对程序代码的部署指令;处理模块202用于响应于部署指令,对程序代码进行编译、打包得到程序文件,并根据第一配置文件,将程序文件部署到至少一个远程服务器上;该第一配置文件中包括至少一个远程服务器中每个远程服务器的用户名和登录密码。

可选的,处理模块202具体用于响应于部署指令,对程序代码进行编译,并根据第二配置文件,对程序代码进行打包,得到程序文件;其中,第二配置文件包括至少一个远程服务器的地址。

此外,如图3所示,本申请实施例还提供了一种终端,包括处理器301以及存储器302;

其中,存储器302用于存储程序指令;处理器301用于调用存储器302中存储的程序指令,执行图1所示的程序部署的方法。

在本发明实施例中,处理器301可以是通用处理器、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。

在本发明实施例中,存储器302可以是非易失性存储器,比如硬盘(harddiskdrive,hdd)或固态硬盘(solid-statedrive,ssd)等,还可以是易失性存储器(volatilememory),例如随机存取存储器(random-accessmemory,ram)。存储器还可以是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本发明实施例中的存储器还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。

本申请实施例还提供了一种计算机存储介质,其中,所述计算机可读存储介质包括计算机程序,当计算机程序在计算机上运行时,使得所述计算机执行附图1所描述的方法。

本申请实施例还提供了一种包含指令的计算机程序产品,其中,当所述指令在计算机上运行时,使得所述计算机执行附图1所描述的方法。本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1