模板代码生成方法、装置、系统、介质和电子设备制造方法及图纸

技术编号:37291821 阅读:12 留言:0更新日期:2023-04-21 03:22
本公开涉及一种模板代码生成方法、装置、系统、介质和电子设备,属于计算机技术领域,能够确保软件项目的质量和安全性、满足脚手架工具的运行要求并确保脚手架工具的生成行为一致性。一种模板代码生成方法,包括:从工具平台接收模板代码创建请求,其中,所述模板代码创建请求用于指示被选定的脚手架工具以及生成软件项目的模板代码所需的第一信息,所述工具平台是用于提供所述脚手架工具的平台;响应于接收到所述模板代码创建请求,读取所述被选定的脚手架工具的配置信息并基于所述配置信息对容器环境进行配置,以及基于所述第一信息生成脚手架运行命令;在配置后的容器环境中运行所述脚手架运行命令,生成软件项目的模板代码。码。码。

【技术实现步骤摘要】
模板代码生成方法、装置、系统、介质和电子设备


[0001]本公开涉及计算机
,具体地,涉及一种模板代码生成方法、装置、系统、介质和电子设备。

技术介绍

[0002]相关技术中,启动一个软件项目时,会使用某种脚手架工具来生成软件项目的初始模板代码,再基于生成的模板代码进行业务开发。图1示出根据相关技术的生成模板代码的流程图。首先,开发者在浏览器里打开代码仓库的网页,创建一个空的代码仓库,得到该代码仓库的名称。然后,开发者在本地计算机上使用脚手架工具对软件项目进行初始化,生成软件项目的模板代码。然后,开发者在本地计算机上使用版本管理工具将生成的模板代码推送到先前创建的空代码仓库里。这样,就完成了软件项目的代码初始化,其他开发者就可以基于这个软件项目的代码仓库进行开发工作了。
[0003]上述方案存在如下问题:(1)开发者在本机使用脚手架工具生成模板代码时,该脚手架工具不一定是最新的(很可能是开发者上次使用时安装的,但是脚手架工具已经更新了),导致生成的模板代码不是最新的,可能影响软件项目的功能和质量;(2)开发者所使用的电脑的软件环境可能不满足脚手架工具的运行要求,导致无法顺利生成模板代码;(3)开发者所使用的电脑的软件环境会影响到脚手架工具的生成行为,导致生成的模板代码在其他开发者电脑上无法正常运行。

技术实现思路

[0004]提供该
技术实现思路
部分以便以简要的形式介绍构思,这些构思将在后面的具体实施方式部分被详细描述。该
技术实现思路
部分并不旨在标识要求保护的技术方案的关键特征或必要特征,也不旨在用于限制所要求的保护的技术方案的范围。
[0005]第一方面,本公开提供一种模板代码生成方法,包括:从工具平台接收模板代码创建请求,其中,所述模板代码创建请求用于指示被选定的脚手架工具以及生成软件项目的模板代码所需的第一信息,所述工具平台是用于提供所述脚手架工具的平台;响应于接收到所述模板代码创建请求,读取所述被选定的脚手架工具的配置信息并基于所述配置信息对容器环境进行配置,以及基于所述第一信息生成脚手架运行命令;在配置后的容器环境中运行所述脚手架运行命令,生成软件项目的模板代码。
[0006]第二方面,本公开提供一种模板代码生成装置,包括:接收模块,用于从工具平台接收模板代码创建请求,其中,所述模板代码创建请求用于指示被选定的脚手架工具以及生成软件项目的模板代码所需的第一信息,所述工具平台是用于提供所述脚手架工具的平台;配置模块,用于响应于接收到所述模板代码创建请求,读取所述被选定的脚手架工具的配置信息并基于所述配置信息对容器环境进行配置,以及基于所述第一信息生成脚手架运行命令;生成模块,用于在配置后的容器环境中运行所述脚手架运行命令,生成软件项目的模板代码。
[0007]第三方面,本公开提供一种模板代码生成系统,包括管理平台、云端服务器和工具平台,其中:所述管理平台,用于对脚手架工具的配置信息进行管理,并将所述脚手架工具的配置信息发送给所述云端服务器;所述云端服务器,用于执行根据本公开第一方面任一项所述的方法;以及所述工具平台,用于从所述云端服务器接收所述脚手架工具的配置信息,生成模板代码创建请求,并将所述模板代码创建请求发送给所述云端服务器,其中,所述模板代码创建请求用于指示被选定的脚手架工具以及生成软件项目的模板代码所需的第一信息,所述工具平台是用于提供所述脚手架工具的平台。
[0008]第四方面,本公开提供一种计算机可读介质,其上存储有计算机程序,该程序被处理装置执行时实现本公开第一方面中任一项所述方法的步骤。
[0009]第五方面,本公开提供一种电子设备,包括:存储装置,其上存储有计算机程序;处理装置,用于执行所述存储装置中的所述计算机程序,以实现本公开第一方面中任一项所述方法的步骤。
[0010]通过采用上述技术方案,由于在从工具平台接收到模板代码创建请求之后,会读取被选定的脚手架工具的配置信息并基于配置信息对容器环境进行配,因此:确保了容器环境中运行的脚手架工具始终是最新版本的脚手架工具,进而确保了生成的模板代码也始终是最新的,避免了老版本代码引起的软件项目的质量和安全问题;确保了容器环境中的软件环境始终能满足脚手架工具的运行要求,进而确保了脚手架工具能够顺利生成模板代码,解决了开发者的本地电脑软件环境不同而影响脚手架工具的运行的问题;确保了脚手架工具的生成行为的一致性,也即,对于任何业务开发者而言,在同一段时间内,在选用同一个脚手架工具、而且针对生成软件项目所需的交互询问的回答结果相同的情况下,所生成的模板代码始终是相同的,避免了因业务开发者本地电脑环境不同导致运行同一脚手架工具所生成的模板代码不同的问题(也即,脚手架工具的生成行为不一致的问题)。
[0011]本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
[0012]结合附图并参考以下具体实施方式,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。贯穿附图中,相同或相似的附图标记表示相同或相似的元素。应当理解附图是示意性的,原件和元素不一定按照比例绘制。在附图中:
[0013]图1示出根据相关技术的生成模板代码的流程图。
[0014]图2是根据本公开一种实施例的模板代码生成方法的流程图。
[0015]图3是根据本公开一种实施例的模板代码生成方法的又一流程图。
[0016]图4是根据本公开一种实施例的模板代码生成方法的又一流程图。
[0017]图5是根据本公开一种实施例的模板代码生成装置的示意框图。
[0018]图6是根据本公开一种实施例的模板代码生成系统的示意框图。
[0019]图7示出适于用来实现本公开实施例的电子设备的结构示意图。
具体实施方式
[0020]下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这
里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
[0021]应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
[0022]本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
[0023]需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
[0024]需要注意,本公开中提及的“一个”、“多个”的修饰是本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种模板代码生成方法,其特征在于,包括:从工具平台接收模板代码创建请求,其中,所述模板代码创建请求用于指示被选定的脚手架工具以及生成软件项目的模板代码所需的第一信息,所述工具平台是用于提供所述脚手架工具的平台;响应于接收到所述模板代码创建请求,读取所述被选定的脚手架工具的配置信息并基于所述配置信息对容器环境进行配置,以及基于所述第一信息生成脚手架运行命令;在配置后的容器环境中运行所述脚手架运行命令,生成软件项目的模板代码。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:从管理平台接收所述脚手架工具的配置信息并将所述脚手架工具的配置信息存储到数据库中,其中,所述管理平台是对所述脚手架工具的配置信息进行管理的平台;所述读取所述被选定的脚手架工具的配置信息,包括:从所述数据库中读取所述被选定的脚手架工具的配置信息。3.根据权利要求2所述的方法,其特征在于,所述方法还包括:将从所述管理平台接收的所述脚手架工具的配置信息发送给所述工具平台;所述第一信息为业务开发者对所述工具平台基于与所述选定的脚手架工具相对应的配置信息提供的、生成所述软件项目的模板代码所需的交互询问的回答结果。4.根据权利要求1至3中任一项所述的方法,其特征在于,所述模板代码创建请求还用于指示项目仓库名称;所述方法还包括:在代码仓库中创建名称为所述项目仓库名称的项目仓库,将所生成的模板代码推送到所述项目仓库中,以及向业务开发者反馈所述模板代码已经创建完成。5.根据权利要求1至3中任一项所述的方法,其特征在于,所述方法还包括:在代码仓库中创建项目仓库;将所生成的模板代码推送到所述项目仓库中;以及将所述项目仓库的信息反馈给业务开发者。6.一种模板代码生成装置,其特征在于,包括:接收模块,用于从工具平台接收模板代码创建请求,其中,所述模板代码创建请求用于指示被选定的脚手架工...

【专利技术属性】
技术研发人员:张水生
申请(专利权)人:北京火山引擎科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1