[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

CN112685035B - 项目开发方法及装置、计算机可读存储介质、电子设备 - Google Patents

项目开发方法及装置、计算机可读存储介质、电子设备 Download PDF

Info

Publication number
CN112685035B
CN112685035B CN202011565679.0A CN202011565679A CN112685035B CN 112685035 B CN112685035 B CN 112685035B CN 202011565679 A CN202011565679 A CN 202011565679A CN 112685035 B CN112685035 B CN 112685035B
Authority
CN
China
Prior art keywords
project
file
end development
command
compiling
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.)
Active
Application number
CN202011565679.0A
Other languages
English (en)
Other versions
CN112685035A (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.)
Jingdong Technology Holding Co Ltd
Original Assignee
Jingdong Technology Holding 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 Jingdong Technology Holding Co Ltd filed Critical Jingdong Technology Holding Co Ltd
Priority to CN202011565679.0A priority Critical patent/CN112685035B/zh
Publication of CN112685035A publication Critical patent/CN112685035A/zh
Application granted granted Critical
Publication of CN112685035B publication Critical patent/CN112685035B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

本公开是关于一种项目开发方法及装置、计算机可读存储介质、电子设备,涉及计算机软件技术领域,该方法包括:接收与前端开发项目对应的当前终端命令行指令,并对当前终端命令行指令进行解析,得到调用预先部署的脚本文件所需要的命令执行参数;基于命令执行参数,从本地磁盘中调用预先部署的脚本文件,并利用脚本文件从前端开发项目中,获取执行当前终端命令行指令中所包括的目标命令所需要的目标数据;根据目标数据,从脚本文件中加载前端开发项目在编译构建过程中所需要的打包工具以及编译过程需要的依赖项;根据打包工具以及依赖项,对前端开发项目进行编译构建,得到与前端开发项目对应的可部署文件。本公开提高了项目开发效率。

Description

项目开发方法及装置、计算机可读存储介质、电子设备
技术领域
本发明实施例涉及计算机软件技术领域,具体而言,涉及一种项目开发方法、项目开发装置、计算机可读存储介质以及电子设备。
背景技术
随着社会的发展,各种智能设备已经成为人们生活和工作中不可或缺的电子设备。现有的智能设备能够安装各种应用程序,以完成各种各样的功能。现有的各种应用程序大多需要经过前端开发工程化系统来进行开发,以方便技术人员。
目前,前端领域最常用一些模块打包器对前端项目进行编译以及构建;其中,在编译的过程中,需要前端项目使用开发依赖项的依赖方式安装打包工具以及构建项目所需要的依赖库。
但是,上述方法存在如下缺陷:一方面,针对某一个项目生成依赖库,只能作用于该项目,其他项目无法依赖使用;因此,在开发者本地前端项目不断增多的情况下,如果每个项目重复进行本地依赖和安装打包工具并构建各项目所需的依赖库,会重复存储占用大量存储空间,进而导致系统的负担较重;另一方面,由于每个项目都需要重复配置,进而导致项目开发效率较低。
因此,需要提供一种新的项目开发方法及装置。
需要说明的是,在上述背景技术部分发明的信息仅用于加强对本发明的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本发明的目的在于提供一种项目开发方法、项目开发装置、计算机可读存储介质以及电子设备,进而至少在一定程度上克服由于相关技术的限制和缺陷而导致的系统负担较重的问题。
根据本公开的一个方面,提供一种项目开发方法,包括:
接收与前端开发项目对应的当前终端命令行指令,并对所述当前终端命令行指令进行解析,得到调用预先部署的脚本文件所需要的命令执行参数;
基于所述命令执行参数,从本地磁盘中调用所述预先部署的脚本文件,并利用所述脚本文件从所述前端开发项目中,获取执行所述当前终端命令行指令中所包括的目标命令所需要的目标数据;
根据所述目标数据,从所述脚本文件中加载所述前端开发项目在编译构建过程中所需要的打包工具以及编译过程需要的依赖项;
根据所述打包工具以及依赖项,对前端开发项目进行编译构建,得到与所述前端开发项目对应的可部署文件。
在本公开的一种示例性实施例中,所述目标命令包括项目模板工程创建命令、对前端开发项目进行编译构建命令、将所述可部署文件上传到服务器命令、对所述依赖项进行安装命令以及对前端开发项目的网络接口请求进行拦截命令中的一种或多种。
在本公开的一种示例性实施例中,当所述目标命令为对前端开发项目进行编译构建命令时,利用所述脚本文件从所述前端开发项目中,获取执行所述当前终端命令行指令中所包括的目标命令所需要的目标数据,包括:
利用所述脚本文件从所述前端开发项目中,获取执行所述当前终端命令行指令中所包括的对前端开发项目进行编译构建命令所需要的配置文件以及项目参数。
在本公开的一种示例性实施例中,根据所述目标数据,从所述脚本文件中加载所述前端开发项目在编译构建过程中所需要的打包工具以及编译过程需要的依赖项,包括:
对所述配置文件以及项目参数进行解析,并根据解析后的配置文件以及项目参数,从所述脚本文件中加载所述前端开发项目在编译构建过程中所需要的打包工具以及编译过程需要的依赖项。
在本公开的一种示例性实施例中,对所述配置文件以及项目参数进行解析,根据解析后的配置文件以及项目参数,从所述脚本文件中加载所述前端开发项目在编译构建过程中所需要的打包工具以及编译过程需要的依赖项,包括:
利用所述脚本文件对所述配置文件进行解析,得到所述前端开发项目当前所处的环境;其中,所述环境包括线上环境、测试环境以及开发环境中的任意一种;
利用所述脚本文件对所述参数信息进行解析,得到与所述前端开发项目当前所处的环境对应的项目参数;其中,所述项目参数包括但不限于输入路径参数、输出路径参数以及服务器端地址参数;
根据所述前端开发项目当前所处的环境以及项目参数,从所述脚本文件中加载所述前端开发项目在编译构建过程中所需要的打包工具以及编译过程需要的依赖项。
在本公开的一种示例性实施例中,所述项目开发方法还包括:
利用所述脚本文件对所述依赖项进行解析,得到所述前端开发项目所需要的依赖项。
在本公开的一种示例性实施例中,根据所述打包工具以及依赖项,对前端开发项目进行编译构建,得到与所述前端开发项目对应的可部署文件,包括:
利用Webpack以及所述依赖程序,对所述前端开发项目的中所包括的资源文件进行压缩;其中,所述资源文件包括但不限于图片文件以及字体文件;
利用Webpack以及所述依赖程序,对所述前端开发项目中所包括的代码文件进行预设处理,得到处理后的代码文件;其中,所述代码文件包括JS文件、CSS文件以及Html文件中的一种或多种,所述预设处理包括编译、压缩、混淆、代码内联以及批量替换中的一种或多种;
根据压缩后的资源文件以及处理后的代码文件,生成轻量的压缩后的文件;
利用Webpack打包工具对所述轻量的压缩后的文件进行代码规范及健康检测,得到与所述前端开发项目对应的可部署文件。
在本公开的一种示例性实施例中,所述预先部署的脚本文件,是以拷贝和/或NPM组件分发的方式进行部署的。
根据本公开的一个方面,提供一种项目开发装置,包括:
指令解析模块,接收与前端开发项目对应的当前终端命令行指令,并对所述当前终端命令行指令进行解析,得到调用预先部署的脚本文件所需要的命令执行参数;
脚本文件调用模块,基于所述命令执行参数,从本地磁盘中调用所述预先部署的脚本文件,并利用所述脚本文件从所述前端开发项目中,获取执行所述当前终端命令行指令中所包括的目标命令所需要的目标数据;
加载模块,根据所述目标数据,从所述脚本文件中加载所述前端开发项目在编译构建过程中所需要的打包工具以及编译过程需要的依赖项;
编译构建模块,根据所述打包工具以及依赖项,对前端开发项目进行编译构建,得到与所述前端开发项目对应的可部署文件。
根据本公开的一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述的项目开发方法。
根据本公开的一个方面,提供一种电子设备,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一项所述的项目开发方法。
本发明实施例提供的一种项目开发方法及装置,一方面,通过接收与前端开发项目对应的当前终端命令行指令,并对当前终端命令行指令进行解析,得到调用预先部署的脚本文件所需要的命令执行参数;再基于命令执行参数,从本地磁盘中调用预先部署的脚本文件,并利用脚本文件从前端开发项目中,获取执行当前终端命令行指令中所包括的目标命令所需要的目标数据;然后根据目标数据,从脚本文件中加载前端开发项目在编译构建过程中所需要的打包工具以及编译过程需要的依赖项;最后根据打包工具以及依赖项,对前端开发项目进行编译构建,得到与前端开发项目对应的可部署文件,由于任何项目的开发人员都可以通过输入当前终端命令行指令来调用预先部署的脚本文件,进而解决了现有技术中由于每个前端开发项目重复进行本地依赖和安装打包工具并构建各项目所需的依赖库,会重复存储占用大量存储空间,进而导致系统的负担较重的问题;另一方面,由于可以直接基于命令执行参数,从本地磁盘中调用预先部署的脚本文件,并利用脚本文件从前端开发项目中,获取执行当前终端命令行指令中所包括的目标命令所需要的目标数据,不再需要重复配置,进而解决了现有技术中由于每个项目都需要重复配置,进而导致项目开发效率较低的问题;再一方面,由于可以直接基于命令执行参数,从本地磁盘中调用预先部署的脚本文件,并利用脚本文件从前端开发项目中,获取执行当前终端命令行指令中所包括的目标命令所需要的目标数据,使得前端开发项目可以根据自行需要输入对应的指令,调起脚本文件执行对应的目标命令,进而进一步的提高了前端开发项目的开发效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示意性示出根据本发明示例实施例的一种项目开发方法的流程图。
图2示意性示出根据本发明示例实施例的一种项目开发方法的应用场景示例图。
图3示意性示出根据本发明示例实施例的一种目标命令的示例图。
图4示意性示出根据本发明示例实施例的一种对所述配置文件以及项目参数进行解析,根据解析后的配置文件以及项目参数,从所述脚本文件中加载所述前端开发项目在编译构建过程中所需要的打包工具以及编译过程需要的依赖项的方法流程图。
图5示意性示出根据本发明示例实施例的一种根据打包工具以及依赖项,对前端开发项目进行编译构建,得到与前端开发项目对应的可部署文件的方法流程图。
图6示意性示出根据本发明示例实施例的另一种项目开发方法的流程图。
图7示意性示出根据本发明示例实施例的一种项目开发装置的框图。
图8示意性示出根据本发明示例实施例的一种用于实现上述项目开发方法的电子设备。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本发明将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本发明的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本发明的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知技术方案以避免喧宾夺主而使得本发明的各方面变得模糊。
此外,附图仅为本发明的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
本示例实施方式中首先提供了一种项目开发方法,该方法可以运行于终端设备、服务器、服务器集群或云服务器等;当然,本领域技术人员也可以根据需求在其他平台运行本发明的方法,本示例性实施例中对此不做特殊限定。参考图1所示,该项目开发方法可以包括以下步骤:
步骤S110.接收与前端开发项目对应的当前终端命令行指令,并对所述当前终端命令行指令进行解析,得到调用预先部署的脚本文件所需要的命令执行参数;
步骤S120.基于所述命令执行参数,从本地磁盘中调用所述预先部署的脚本文件,并利用所述脚本文件从所述前端开发项目中,获取执行所述当前终端命令行指令中所包括的目标命令所需要的目标数据;
步骤S130.根据所述目标数据,从所述脚本文件中加载所述前端开发项目在编译构建过程中所需要的打包工具以及编译过程需要的依赖项;
步骤S140.根据所述打包工具以及依赖项,对前端开发项目进行编译构建,得到与所述前端开发项目对应的可部署文件。
上述项目开发方法中,一方面,通过接收与前端开发项目对应的当前终端命令行指令,并对当前终端命令行指令进行解析,得到调用预先部署的脚本文件所需要的命令执行参数;再基于命令执行参数,从本地磁盘中调用预先部署的脚本文件,并利用脚本文件从前端开发项目中,获取执行当前终端命令行指令中所包括的目标命令所需要的目标数据;然后根据目标数据,从脚本文件中加载前端开发项目在编译构建过程中所需要的打包工具以及编译过程需要的依赖项;最后根据打包工具以及依赖项,对前端开发项目进行编译构建,得到与前端开发项目对应的可部署文件,由于任何项目的开发人员都可以通过输入当前终端命令行指令来调用预先部署的脚本文件,进而解决了现有技术中由于每个项目重复进行本地依赖和安装打包工具并构建各项目所需的依赖库,会重复存储占用大量存储空间,进而导致系统的负担较重的问题;另一方面,由于可以直接基于命令执行参数,从本地磁盘中调用预先部署的脚本文件,并利用脚本文件从前端开发项目中,获取执行当前终端命令行指令中所包括的目标命令所需要的目标数据,不再需要重复配置,进而解决了现有技术中由于每个项目都需要重复配置,进而导致项目开发效率较低的问题;再一方面,由于可以直接基于命令执行参数,从本地磁盘中调用预先部署的脚本文件,并利用脚本文件从前端开发项目中,获取执行当前终端命令行指令中所包括的目标命令所需要的目标数据,使得前端开发项目可以根据自行需要输入对应的指令,调起脚本文件执行对应的目标命令,进而进一步的提高了前端开发项目的开发效率。
以下,将结合附图对本公开所提供的项目开发方法中包括的步骤进行详细的解释以及说明。
首先,对本公开中所涉及的名词进行解释。
Node.js:是一个基于Chrome JavaScript运行时建立的平台,用于方便地搭建响应速度快、易于扩展的网络应用;其使用事件驱动,非阻塞I/O模型而得以轻量和高效,非常适合在分布式设备上运行数据密集型的实时应用。
Express:是一个简洁而灵活的node.js Web应用框架,可以提供一系列强大特性以帮助创建各种Web应用;同时,Express不对Node.js已有的特性进行二次抽象,只是在Node.js之上扩展了Web应用所需的功能。
Webpack:Webpack是一款用户打包前端模块的工具,主要是用于对在浏览器端使用的脚本文件进行打包;同时,还可以对其他静态资源进行转换、捆绑以及打包;其中,静态资源可以包括Css、Image、Fontfile、Template等。
NPM:Node Package Manager,是一个Node.js的包管理以及分发工具。
JS:JavaScript的缩写;是一种脚本语言,以及一种轻量级的编程语言,可插入HTML页面的编程代码。
编译构建:一种针对某个前端项目,将当前项目及所依赖的第三方库文件进行处理的过程;该处理过程可以产出若干特定格式的文件,该特定格式的文件可以发布在服务器上完整提供该前端项目设计功能。
Dependencies:依赖项,属于前端项目配置文件Package.json中的一项,表示该前端项目依赖Dependencies节点下配置的项目;同时,在编译构建时会将该节点下配置的项目打包进产出文件。
devDependencies:开发依赖项,前端项目配置文件Package.json中的一项,表示该前端项目的编译构建过程依赖devDependencies节点下配置的项目;同时,编译构建时不会将该节点下配置的项目打包进产出文件。
其次,对本公开的发明目的进行解释以及说明。
具体的,本公开针对前端项目的编译构建依赖库无法复用的问题,提供一个全局的编译构建程序,统一依赖所有的编译构建依赖项,统一配置,避免每个项目都重复依赖安装和配置依赖项的问题,进而达到降低系统负担以及提升开发效率的目的。
进一步的,对本公开的中所记载的预先部署的脚本文件的应用场景进行解释以及说明。具体的,参考图2所示,该脚本文件的开发过程可以包括:对同一个工作空间200中的多个项目的业务代码以及依赖项进行封装、编译构建,进而生成脚本文件,也即CLI(Command-Line Interface,命令行界面)程序,以便于项目各项目的项目开发人员可以直接从输入调用命令进行调用。其中,上述工作空间中所包括的项目可以包括项目1(201)、项目2(202)、项目3(203),……,项目n等多个项目,每一个项目中都包括其对应的业务代码以及依赖项(Dependencies),在脚本文件的开发过程中,对各项目中所包括的业务代码以及依赖项(Dependencies)进行编译构建,进而生成一个CLI程序204,该CLI程序中包括所有项目的依赖项(Dependencies)。
也就是说,上述CLI程序即为本申请所记载的脚本文件,依赖了Webpack和其他构建库,通过全局安装的方式安装到开发者开发设备中。开发者在前端项目中不需要依赖Webpack和其他构建库,只需要在前端项目目录下通过使用命令调用该全局CLI程序,即可执行Webpack的编译构建操作,完成当前前端项目的编译构建任务。
以下,将对步骤S110-步骤S140进行解释以及说明。
在步骤S110中,接收与前端开发项目对应的当前终端命令行指令,并对所述当前终端命令行指令进行解析,得到调用预先部署的脚本文件所需要的命令执行参数。
在本示例实施例中,首先,接收与前端开发项目对应的当前终端命令行指令。具体的,可以通过Node组件中包括的Cammander监听项目开发人员输入的当全部终端命令行指令;其中,该用户可以是项目开发人员,也可以是项目管理人员或者其他具有项目开发权项的人员,本示例对此不做特殊限制。
进一步的,在接收到终端命令行执行以后,可以对当前终端命令行指令进行解析,得到调用预先部署的脚本文件所需要的命令执行参数;例如,当输入的当前终端命令行指令为:jr build test时,命令执行参数为test;当输入的当前终端命令行指令为:jr init<projectName>时,命令执行参数为<projectName>。
在步骤S120中,基于所述命令执行参数,从本地磁盘中调用所述预先部署的脚本文件,并利用所述脚本文件从所述前端开发项目中,获取执行所述当前终端命令行指令中所包括的目标命令所需要的目标数据。
在本示例实施例中,基于命令执行参数,从本地磁盘中调用预先部署的脚本文件,再利用该脚本文件从前端开发项目中,获取执行当前终端命令行指令中所包括的目标命令所需要的目标数据;其中,该目标命令与命令执行参数是对应的,也即,如果命令执行参数为test,则该目标命令为test对应的命令。
进一步的,此处以调起命令为jr init<projectName>为例,对脚本文件所包括的目标命令进行解释以及说明。
程序调起命令:jr init<projectName>。其中:jr表示调起某个程序的命令的名称,不同的程序会有不同的命令;init表示调起程序后的操作Action,表明所需要执行的动作;<projectName>表示参数占位符。具体的,参考图3所示,该目标命令可以包括项目模板工程创建命令301、对前端开发项目进行编译构建命令302、将所述可部署文件上传到服务器命令303、对所述依赖项进行安装命令304以及对前端开发项目的网络接口请求进行拦截命令305。其中,
项目模版工程创建命令(init)301,可以用于在当前目录下或者参数指定目录下创建一个模板工程。具体操作就是将预置到代码仓库的前端模板项目下载到当前或者参数指定目录下,并修改该模板副本下的配置文件内容;该模板项目内一般具有固定的文件目录结构,包含了开发过程中需要用到的通用程序代码和依赖代码模块。
对前端开发项目进行编译构建命令302可以包括dev以及build。其中,dev可以用于将当前Web项目使用开发环境配置进行编译构建,在指定目录下生成可部署文件;然后,以当前构建目录为根目录,启动静态服务,供开发者在本机预览和调试Web项目页面;build可以用于对当前Web项目进行编译构建,生成可部署文件,命令后可以指定测试环境或者生产环境。
将所述可部署文件上传到服务器命令(deploy)303,可以用于将指定路径的文件上传部署到服务器上。
对所述依赖项进行安装命令(install)304,可以用于安装指定依赖组件,参数跟组件名。执行动作是将指定位置存储的组件项目下载到当前项目指定目录下,开发者可对组件进行依赖和使用。
对前端开发项目的网络接口请求进行拦截命令(mock)305,可以用于拦截项目网络接口请求,进而返回前端开发项目所需要的值,实现前端开发项目服务端接口模拟数据的功能,进而便于对前端开发项目进行开发以及测试。
进一步的,当所述目标命令为对前端开发项目进行编译构建命令(Build)时,利用所述脚本文件从所述前端开发项目中,获取执行所述当前终端命令行指令中所包括的目标命令所需要的目标数据,包括:利用所述脚本文件从所述前端开发项目中,获取执行所述当前终端命令行指令中所包括的对前端开发项目进行编译构建命令所需要的配置文件以及项目参数;当目标命令为对前端开发项目进行编译构建命令(dev)时,利用脚本文件从前端开发项目中,获取执行当前终端命令行指令中所包括的目标命令所需要的目标数据,包括:利用脚本文件在前端开发项目所在的项目目录下执行编译构建命令(dev)。此处需要补充说明的是,执行其他目标命令所需要的目标数据可以根据各目标命令的实际需要进行获取,具体详见上述对各目标命令的解释说明,此处不再一一赘述。
在步骤S130中,根据所述目标数据,从所述脚本文件中加载所述前端开发项目在编译构建过程中所需要的打包工具以及编译过程需要的依赖项。
在本示例实施例中,以目标数据为配置文件以及项目参数为例进行解释以及说明。具体的,根据所述目标数据,从所述脚本文件中加载所述前端开发项目在编译构建过程中所需要的打包工具以及编译过程需要的依赖项,可以包括:对所述配置文件以及项目参数进行解析,并根据解析后的配置文件以及项目参数,从所述脚本文件中加载所述前端开发项目在编译构建过程中所需要的打包工具以及编译过程需要的依赖项。
进一步的,参考图4所示,对所述配置文件以及项目参数进行解析,根据解析后的配置文件以及项目参数,从所述脚本文件中加载所述前端开发项目在编译构建过程中所需要的打包工具以及编译过程需要的依赖项可以包括步骤S410-步骤S430。其中:
在步骤S410中,利用所述脚本文件对所述配置文件进行解析,得到所述前端开发项目当前所处的环境;其中,所述环境包括线上环境、测试环境以及开发环境中的任意一种;
在步骤S420中,利用所述脚本文件对所述参数信息进行解析,得到与所述前端开发项目当前所处的环境对应的项目参数;其中,所述项目参数包括但不限于输入路径参数、输出路径参数以及服务器端地址参数;
在步骤S430中,根据所述前端开发项目当前所处的环境以及项目参数,从所述脚本文件中加载所述前端开发项目在编译构建过程中所需要的打包工具以及编译过程需要的依赖项。
以下,将对步骤S410-步骤S430进行解释以及说明。首先,利用脚本文件对配置文件进行解析,得到前端开发项目当前所处的环境;该环境可以包括线上环境、测试环境以及开发环境等等;其次,对参数信息进行解析,得到项目参数,该项目参数可以包括输入路径参数、输出路径参数以及服务器端地址参数;还可以包括增量参数以及工程包名参数等等,本示例对此不做特殊限定;最后,再根据前端开发项目当前所处的环境以及项目参数,从所述脚本文件中加载所述前端开发项目在编译构建过程中所需要的打包工具以及编译过程需要的依赖项。通过该方法,可以避免前端开发项目需要使用devDependencies依赖方式安装Webpack及构建所需的依赖库,其他项目无法依赖使用,进而使得在开发者本地前端项目不断增多的情况下,每个项目重复进行本地依赖和安装Webpack及构建所需的依赖库,重复存储占用大量存储空间,同时还需要重复配置,十分低效的问题。
在步骤S140中,根据所述打包工具以及依赖项,对前端开发项目进行编译构建,得到与所述前端开发项目对应的可部署文件。
在本示例实施例中,为了可以进行编译构建,首先需要对依赖项进行解析,具体的可以包括:利用所述脚本文件对所述依赖项进行解析,得到所述前端开发项目所述的依赖程序。
进一步的,在得到依赖程序以后,可以根据所述打包工具以及依赖项,对前端开发项目进行编译构建,得到与所述前端开发项目对应的可部署文件。具体的,参考图5所示,根据打包工具以及依赖项,对前端开发项目进行编译构建,得到与前端开发项目对应的可部署文件可以包括步骤S510-步骤S540。其中:
在步骤S510中,利用Webpack以及所述依赖程序,对所述前端开发项目的中所包括的资源文件进行压缩;其中,所述资源文件包括但不限于图片文件以及字体文件;
步骤S520,利用Webpack以及所述依赖程序,对所述前端开发项目中所包括的代码文件进行预设处理,得到处理后的代码文件;其中,所述代码文件包括JS文件、CSS文件以及Html文件中的一种或多种,所述预设处理包括编译、压缩、混淆、代码内联以及批量替换中的一种或多种;
步骤S530,根据压缩后的资源文件以及处理后的代码文件,生成轻量的压缩后的文件;
在步骤S540中,利用Webpack打包工具对所述轻量的压缩后的文件进行代码规范及健康检测,得到与所述前端开发项目对应的可部署文件。
图5示出了利用脚本文件对前端开发项目的整体编译构建过程,此处需要重点强调的是,由于脚本文件中包括了Webpack编译构建所需的程序模块(如Loader和Plugin),进而可以对前端开发项目的中所包括的Html文件、图片文件、字体文件、JS文件以及CSS文件进行处理,进而得到可部署文件,达到实现项目开发的目的。
以下,对本发明中所记载的预先部署的脚本文件的部署方式进行解释以及说明。具体的,预先部署的脚本文件,可以通过拷贝和/或NPM组件分发的方式部署至项目开发人员所在的终端设备。例如,可以NPM(Node Package Manager)组件分发的方式将脚本文件安装至项目开发人员所在的终端设备,以使得所述项目开发人员在所述项目目录下通过命令行界面输入调用指令,完成对所述脚本文件的调用。其中,该预设的分发工具可以是NPM。当然,也可以直接将脚本文件拷贝至项目开发人员所在的终端设备,以使得所述项目开发人员在所述项目目录下通过命令行界面输入调用指令,完成对所述脚本文件的调用。
以下,结合图6对本公开所提供的项目开发方法进行进一步的解释以及说明。参考图6所示,该项目开发方法可以包括以下步骤:
步骤S610,通过Node组件Commander监听用户输入特定终端命令行,执行构建程序;
步骤S620,构建程序通过获取命令行中相关参数以及命令执行所在项目目录下特定配置文件配置项内容,进行重新组装转换为Webpack构建所需要的配置数据;
步骤S630,调用Webpack执行编译构建动作,生成可部署文件。
本公开提供的项目开发方法,使用Dependencies方式依赖前端项目编译构建所需要的Webpack等第三方库,并进行统一配置;同时,在该编译构建程序的Package.json配置文件中,在Dependencies节点中配置前端项目编译构建所需的所有依赖项目;并且,在该编译构建程序中使用特定模板统一配置Webpack构建所需要的配置项,最终将配置项传入Webpack并进行编译构建操作,进而使得开发者不需要在所开发的前端项目中依赖编译构建所需要的库,只需要在项目目录下通过命令调起该构建程序,即可执行对当前前端项目的编译构建操作,提升开发效率,同时降低系统负担。
本公开还提供了一种项目开发装置。参考图6所示,该项目开发装置可以包括指令解析模块710、脚本文件调用模块720、加载模块730以及编译构建模块740。其中:
指令解析模块710可以用于接收与前端开发项目对应的当前终端命令行指令,并对所述当前终端命令行指令进行解析,得到调用预先部署的脚本文件所需要的命令执行参数;
脚本文件调用模块720可以用于基于所述命令执行参数,从本地磁盘中调用所述预先部署的脚本文件,并利用所述脚本文件从所述前端开发项目中,获取执行所述当前终端命令行指令中所包括的目标命令所需要的目标数据;
加载模块730可以用于根据所述目标数据,从所述脚本文件中加载所述前端开发项目在编译构建过程中所需要的打包工具以及编译过程需要的依赖项;
编译构建模块740可以用于根据所述打包工具以及依赖项,对前端开发项目进行编译构建,得到与所述前端开发项目对应的可部署文件。
在本公开的一种示例性实施例中,所述目标命令包括项目模板工程创建命令、对前端开发项目进行编译构建命令、将所述可部署文件上传到服务器命令、对所述依赖项进行安装命令以及对前端开发项目的网络接口请求进行拦截命令中的一种或多种。
在本公开的一种示例性实施例中,当所述目标命令为对前端开发项目进行编译构建命令时,利用所述脚本文件从所述前端开发项目中,获取执行所述当前终端命令行指令中所包括的目标命令所需要的目标数据,包括:
利用所述脚本文件从所述前端开发项目中,获取执行所述当前终端命令行指令中所包括的对前端开发项目进行编译构建命令所需要的配置文件以及项目参数。
在本公开的一种示例性实施例中,根据所述目标数据,从所述脚本文件中加载所述前端开发项目在编译构建过程中所需要的打包工具以及编译过程需要的依赖项,包括:
对所述配置文件以及项目参数进行解析,并根据解析后的配置文件以及项目参数,从所述脚本文件中加载所述前端开发项目在编译构建过程中所需要的打包工具以及编译过程需要的依赖项。
在本公开的一种示例性实施例中,对所述配置文件以及项目参数进行解析,根据解析后的配置文件以及项目参数,从所述脚本文件中加载所述前端开发项目在编译构建过程中所需要的打包工具以及编译过程需要的依赖项,包括:
利用所述脚本文件对所述配置文件进行解析,得到所述前端开发项目当前所处的环境;其中,所述环境包括线上环境、测试环境以及开发环境中的任意一种;
利用所述脚本文件对所述参数信息进行解析,得到与所述前端开发项目当前所处的环境对应的项目参数;其中,所述项目参数包括但不限于输入路径参数、输出路径参数以及服务器端地址参数;
根据所述前端开发项目当前所处的环境以及项目参数,从所述脚本文件中加载所述前端开发项目在编译构建过程中所需要的打包工具以及编译过程需要的依赖项。
在本公开的一种示例性实施例中,所述项目开发方法还包括:
利用所述脚本文件对所述依赖项进行解析,得到所述前端开发项目所述的依赖程序。
在本公开的一种示例性实施例中,根据所述打包工具以及依赖项,对前端开发项目进行编译构建,得到与所述前端开发项目对应的可部署文件,包括:
利用Webpack以及所述依赖程序,对所述前端开发项目的中所包括的资源文件进行压缩;其中,所述资源文件包括但不限于图片文件以及字体文件;
利用Webpack以及所述依赖程序,对所述前端开发项目中所包括的代码文件进行预设处理,得到处理后的代码文件;其中,所述代码文件包括JS文件、CSS文件以及Html文件中的一种或多种,所述预设处理包括编译、压缩、混淆、代码内联以及批量替换中的一种或多种;
根据压缩后的资源文件以及处理后的代码文件,生成轻量的压缩后的文件;
利用Webpack打包工具对所述轻量的压缩后的文件进行代码规范及健康检测,得到与所述前端开发项目对应的可部署文件。
在本公开的一种示例性实施例中,所述预先部署的脚本文件,是以拷贝和/或NPM组件分发的方式进行部署的。
上述项目开发装置中各模块的具体细节已经在对应的项目开发方法中进行了详细的描述,因此此处不再赘述。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
此外,尽管在附图中以特定顺序描述了本发明中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
在本发明的示例性实施例中,还提供了一种能够实现上述方法的电子设备。
所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
下面参照图8来描述根据本发明的这种实施方式的电子设备800。图8显示的电子设备800仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图8所示,电子设备800以通用计算设备的形式表现。电子设备800的组件可以包括但不限于:上述至少一个处理单元810、上述至少一个存储单元820、连接不同系统组件(包括存储单元820和处理单元810)的总线830以及显示单元840。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元810执行,使得所述处理单元810执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元810可以执行如图1中所示的步骤S110:接收与前端开发项目对应的当前终端命令行指令,并对所述当前终端命令行指令进行解析,得到调用预先部署的脚本文件所需要的命令执行参数;步骤S120:基于所述命令执行参数,从本地磁盘中调用所述预先部署的脚本文件,并利用所述脚本文件从所述前端开发项目中,获取执行所述当前终端命令行指令中所包括的目标命令所需要的目标数据;步骤S1340:根据所述目标数据,从所述脚本文件中加载所述前端开发项目在编译构建过程中所需要的打包工具以及编译过程需要的依赖项;步骤S140:根据所述打包工具以及依赖项,对前端开发项目进行编译构建,得到与所述前端开发项目对应的可部署文件。
存储单元820可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)8201和/或高速缓存存储单元8202,还可以进一步包括只读存储单元(ROM)8203。
存储单元820还可以包括具有一组(至少一个)程序模块8205的程序/实用工具8204,这样的程序模块8205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线830可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备800也可以与一个或多个外部设备900(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备800交互的设备通信,和/或与使得该电子设备800能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口850进行。并且,电子设备800还可以通过网络适配器860与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器860通过总线830与电子设备800的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备800使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本发明实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本发明实施方式的方法。
在本发明的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。
根据本发明的实施方式的用于实现上述方法的程序产品,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
此外,上述附图仅是根据本发明示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
本领域技术人员在考虑说明书及实践这里发明的发明后,将容易想到本发明的其他实施例。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未发明的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由权利要求指出。

Claims (10)

1.一种项目开发方法,其特征在于,包括:
接收与前端开发项目对应的当前终端命令行指令,并对所述当前终端命令行指令进行解析,得到调用预先部署的脚本文件所需要的命令执行参数;其中,所述脚本文件为命令行界面程序,所述命令行界面程序是通过对同一个工作空间中的多个项目的业务代码以及依赖项进行封装以及编译构建得到的,所述命令行界面程序是通过全局安装的方式安装到与前端开发项目对应的开发者的开发设备中的;所述命令行界面程序中包括所有项目的依赖项;
基于所述命令执行参数,从本地磁盘中调用所述预先部署的脚本文件,并利用所述脚本文件从所述前端开发项目中,获取执行所述当前终端命令行指令中所包括的目标命令所需要的目标数据;其中,所述目标命令包括项目模板工程创建命令、对前端开发项目进行编译构建命令、将可部署文件上传到服务器命令、对所述依赖项进行安装命令以及对前端开发项目的网络接口请求进行拦截命令中的一种或多种;
根据所述目标数据,从所述脚本文件中加载所述前端开发项目在编译构建过程中所需要的打包工具以及编译过程需要的依赖项;
根据所述打包工具以及依赖项,对前端开发项目进行编译构建,得到与所述前端开发项目对应的可部署文件。
2.根据权利要求1所述的项目开发方法,其特征在于,当所述目标命令为对前端开发项目进行编译构建命令时,利用所述脚本文件从所述前端开发项目中,获取执行所述当前终端命令行指令中所包括的目标命令所需要的目标数据,包括:
利用所述脚本文件从所述前端开发项目中,获取执行所述当前终端命令行指令中所包括的对前端开发项目进行编译构建命令所需要的配置文件以及项目参数。
3.根据权利要求2所述的项目开发方法,其特征在于,根据所述目标数据,从所述脚本文件中加载所述前端开发项目在编译构建过程中所需要的打包工具以及编译过程需要的依赖项,包括:
对所述配置文件以及项目参数进行解析,并根据解析后的配置文件以及项目参数,从所述脚本文件中加载所述前端开发项目在编译构建过程中所需要的打包工具以及编译过程需要的依赖项。
4.根据权利要求3所述的项目开发方法,其特征在于,对所述配置文件以及项目参数进行解析,根据解析后的配置文件以及项目参数,从所述脚本文件中加载所述前端开发项目在编译构建过程中所需要的打包工具以及编译过程需要的依赖项,包括:
利用所述脚本文件对所述配置文件进行解析,得到所述前端开发项目当前所处的环境;其中,所述环境包括线上环境、测试环境以及开发环境中的任意一种;
利用所述脚本文件对所述项目参数进行解析,得到与所述前端开发项目当前所处的环境对应的项目参数;其中,所述项目参数包括但不限于输入路径参数、输出路径参数以及服务器端地址参数;
根据所述前端开发项目当前所处的环境以及项目参数,从所述脚本文件中加载所述前端开发项目在编译构建过程中所需要的打包工具以及编译过程需要的依赖项。
5.根据权利要求4所述的项目开发方法,其特征在于,所述项目开发方法还包括:
利用所述脚本文件对所述依赖项进行解析,得到所述前端开发项目的依赖程序。
6.根据权利要求5所述的项目开发方法,其特征在于,根据所述打包工具以及依赖项,对前端开发项目进行编译构建,得到与所述前端开发项目对应的可部署文件,包括:
利用Webpack以及所述依赖程序,对所述前端开发项目的中所包括的资源文件进行压缩;其中,所述资源文件包括但不限于图片文件以及字体文件;
利用Webpack以及所述依赖程序,对所述前端开发项目中所包括的代码文件进行预设处理,得到处理后的代码文件;其中,所述代码文件包括JS文件、CSS文件以及Html文件中的一种或多种,所述预设处理包括编译、压缩、混淆、代码内联以及批量替换中的一种或多种;
根据压缩后的资源文件以及处理后的代码文件,生成轻量的压缩后的文件;
利用Webpack打包工具对所述轻量的压缩后的文件进行代码规范及健康检测,得到与所述前端开发项目对应的可部署文件。
7.根据权利要求1-6任一项所述的项目开发方法,其特征在于,所述预先部署的脚本文件,是以拷贝和/或NPM组件分发的方式进行部署的。
8.一种项目开发装置,其特征在于,包括:
指令解析模块,接收与前端开发项目对应的当前终端命令行指令,并对所述当前终端命令行指令进行解析,得到调用预先部署的脚本文件所需要的命令执行参数;其中,所述脚本文件为命令行界面程序,所述命令行界面程序是通过对同一个工作空间中的多个项目的业务代码以及依赖项进行封装以及编译构建得到的,所述命令行界面程序是通过全局安装的方式安装到与前端开发项目对应的开发者的开发设备中的;所述命令行界面程序中包括所有项目的依赖项;
脚本文件调用模块,基于所述命令执行参数,从本地磁盘中调用所述预先部署的脚本文件,并利用所述脚本文件从所述前端开发项目中,获取执行所述当前终端命令行指令中所包括的目标命令所需要的目标数据;其中,所述目标命令包括项目模板工程创建命令、对前端开发项目进行编译构建命令、将可部署文件上传到服务器命令、对所述依赖项进行安装命令以及对前端开发项目的网络接口请求进行拦截命令中的一种或多种;
加载模块,根据所述目标数据,从所述脚本文件中加载所述前端开发项目在编译构建过程中所需要的打包工具以及编译过程需要的依赖项;
编译构建模块,根据所述打包工具以及依赖项,对前端开发项目进行编译构建,得到与所述前端开发项目对应的可部署文件。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-7任一项所述的项目开发方法。
10. 一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1-7任一项所述的项目开发方法。
CN202011565679.0A 2020-12-25 2020-12-25 项目开发方法及装置、计算机可读存储介质、电子设备 Active CN112685035B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011565679.0A CN112685035B (zh) 2020-12-25 2020-12-25 项目开发方法及装置、计算机可读存储介质、电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011565679.0A CN112685035B (zh) 2020-12-25 2020-12-25 项目开发方法及装置、计算机可读存储介质、电子设备

Publications (2)

Publication Number Publication Date
CN112685035A CN112685035A (zh) 2021-04-20
CN112685035B true CN112685035B (zh) 2024-05-17

Family

ID=75453291

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011565679.0A Active CN112685035B (zh) 2020-12-25 2020-12-25 项目开发方法及装置、计算机可读存储介质、电子设备

Country Status (1)

Country Link
CN (1) CN112685035B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113050937A (zh) * 2021-04-21 2021-06-29 中国工商银行股份有限公司 基于命令行的前端数据处理方法及装置
CN113296746A (zh) * 2021-05-31 2021-08-24 成都安恒信息技术有限公司 命令行搭建可配置Vue项目脚手架的系统及方法
CN113312030B (zh) * 2021-06-15 2024-06-18 京东科技信息技术有限公司 构建应用程序的方法、电子设备及存储介质
CN113448559A (zh) * 2021-07-13 2021-09-28 壹药网科技(上海)股份有限公司 一种针对多开发项目的全球广域网前端的开发系统和方法
CN113590446B (zh) * 2021-08-02 2024-06-14 上海米哈游璃月科技有限公司 数值文件的检测方法、装置、电子设备及存储介质
CN113656000B (zh) * 2021-08-11 2024-01-09 北京达佳互联信息技术有限公司 网页的处理方法和装置
CN113760356B (zh) * 2021-09-10 2024-03-19 北京百度网讯科技有限公司 程序产品的差异化配置方法、装置、设备和介质
CN114168112A (zh) * 2021-12-09 2022-03-11 深圳创维智慧科技有限公司 应用开发方法、系统、设备及计算机可读存储介质
CN117215909B (zh) * 2023-07-26 2024-11-01 中电云计算技术有限公司 前端代码的部署检验方法、装置、设备及介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014183447A1 (en) * 2013-05-14 2014-11-20 Tencent Technology (Shenzhen) Company Limited Method, system and sever for downloading installation package
CN106843869A (zh) * 2017-01-16 2017-06-13 百融(北京)金融信息服务股份有限公司 一种前端开发工程化系统和方法
CN107577469A (zh) * 2017-08-21 2018-01-12 厦门悦讯教育科技有限公司 一种软件打包发布管理方法
CN108304184A (zh) * 2016-08-09 2018-07-20 上海思立微电子科技有限公司 编译方法及装置
CN110659030A (zh) * 2019-09-23 2020-01-07 深圳市众学科技有限公司 Unity项目编译方法、系统、计算机设备及存储介质
CN111399865A (zh) * 2020-04-21 2020-07-10 贵州新致普惠信息技术有限公司 一种基于容器技术自动构建目标文件的方法
CN111552508A (zh) * 2020-04-29 2020-08-18 杭州数梦工场科技有限公司 应用程序版本构建方法、装置、电子设备
CN111897520A (zh) * 2020-07-31 2020-11-06 平安科技(深圳)有限公司 前端项目框架的构建方法、装置、计算机设备及存储介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8051405B2 (en) * 2006-01-11 2011-11-01 Oracle International Corporation System and method for build script generation in a software development environment
KR102156371B1 (ko) * 2013-11-27 2020-09-15 한국전자통신연구원 네이티브 빌드 기반의 임베디드 소프트웨어 개발 환경을 지원하기 위한 임베디드 소프트웨어 개발 도구 제공 방법 및 장치
US9665849B2 (en) * 2015-02-26 2017-05-30 Red Hat, Inc. Employing dependency graph in software build projects
US10095499B2 (en) * 2016-09-16 2018-10-09 Microsoft Technology Licensing, Llc Optimization for multi-project package manager
US10963230B2 (en) * 2019-02-14 2021-03-30 International Business Machines Corporation Single page application continuous integration, build, and deployment

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014183447A1 (en) * 2013-05-14 2014-11-20 Tencent Technology (Shenzhen) Company Limited Method, system and sever for downloading installation package
CN108304184A (zh) * 2016-08-09 2018-07-20 上海思立微电子科技有限公司 编译方法及装置
CN106843869A (zh) * 2017-01-16 2017-06-13 百融(北京)金融信息服务股份有限公司 一种前端开发工程化系统和方法
CN107577469A (zh) * 2017-08-21 2018-01-12 厦门悦讯教育科技有限公司 一种软件打包发布管理方法
CN110659030A (zh) * 2019-09-23 2020-01-07 深圳市众学科技有限公司 Unity项目编译方法、系统、计算机设备及存储介质
CN111399865A (zh) * 2020-04-21 2020-07-10 贵州新致普惠信息技术有限公司 一种基于容器技术自动构建目标文件的方法
CN111552508A (zh) * 2020-04-29 2020-08-18 杭州数梦工场科技有限公司 应用程序版本构建方法、装置、电子设备
CN111897520A (zh) * 2020-07-31 2020-11-06 平安科技(深圳)有限公司 前端项目框架的构建方法、装置、计算机设备及存储介质

Also Published As

Publication number Publication date
CN112685035A (zh) 2021-04-20

Similar Documents

Publication Publication Date Title
CN112685035B (zh) 项目开发方法及装置、计算机可读存储介质、电子设备
CN111740948B (zh) 数据包发布方法、动态更新方法、装置、设备及介质
CN111240684B (zh) 一种js代码的裁剪方法、装置、介质和电子设备
CN106325847B (zh) 基于iOS平台获取应用程序功能的方法和装置
CN110647332A (zh) 基于容器云的软件部署方法和装置
CN111913741B (zh) 对象拦截方法、装置、介质及电子设备
CN112114890A (zh) 小程序的处理方法、装置、设备及存储介质
CN110895471A (zh) 安装包生成方法、装置、介质及电子设备
KR20150061203A (ko) 네이티브 빌드 기반의 임베디드 소프트웨어 개발 환경을 지원하기 위한 임베디드 소프트웨어 개발 도구 제공 방법 및 장치
CN110888639A (zh) 一种业务代码编译打包方法和装置
CN111782523A (zh) 云端服务部署测试方法、装置、电子设备和存储介质
CN111142884A (zh) 小程序的版本部署方法、装置、电子设备及存储介质
US9026997B2 (en) Systems and methods for executing object-oriented programming code invoking pre-existing objects
CN114816672A (zh) 虚拟机的创建方法、装置、电子设备和存储介质
US11210110B2 (en) Application library analytics tool
CN114217789A (zh) 功能组件拓展方法、装置、设备、存储介质及程序产品
CN116166907B (zh) 一种使用WebAssembly和服务页面编译技术开发Web应用的方法及装置
CN111435328B (zh) 应用测试方法、装置、电子设备及可读存储介质
CN113568623B (zh) 一种部署应用的方法、装置和电子设备
CN114168151B (zh) 基于容器的程序编译方法、装置、电子设备及存储介质
CN115509545A (zh) 一种ios应用的打包构建方法及装置
CN111158645B (zh) 提供集成开发环境的系统和方法
CN114238831A (zh) Html代码片段的处理方法、系统、电子设备和存储介质
CN112882698A (zh) 开发环境的生成方法及装置、计算机存储介质及电子设备
CN112379885A (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
CB02 Change of applicant information

Address after: Room 221, 2 / F, block C, 18 Kechuang 11th Street, Daxing District, Beijing, 100176

Applicant after: Jingdong Technology Holding Co.,Ltd.

Address before: Room 221, 2 / F, block C, 18 Kechuang 11th Street, Daxing District, Beijing, 100176

Applicant before: Jingdong Digital Technology Holding Co.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant