[发明专利]代码打包方法、装置、计算机设备及存储介质有效
申请号: | 201910044789.3 | 申请日: | 2019-01-17 |
公开(公告)号: | CN109783133B | 公开(公告)日: | 2022-03-22 |
发明(设计)人: | 陈强 | 申请(专利权)人: | 北京城市网邻信息技术有限公司 |
主分类号: | G06F8/71 | 分类号: | G06F8/71;G06F8/41 |
代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 孟金喆 |
地址: | 100015 北京市朝阳区酒仙桥*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 代码 打包 方法 装置 计算机 设备 存储 介质 | ||
本发明公开了代码打包方法、装置、计算机设备及存储介质,该方法包括:确定应用软件的入口文件中所包括代码模块的当前引入状态;根据用户选定的待打包环境及各所述当前引入状态,确定所述入口文件中待调整引入状态的目标代码模块;调整各所述目标代码模块的当前引入状态,获得待编译入口文件;编译所述待编译入口文件,获得所述待打包环境对应的打包文件。利用该方法,实现了不同的打包环境基于同一个入口文件的编译打包,与现有不同打包环境对应不同入口文件相比,该方法减少了重复引入相同代码到不同入口文件的空间资源占用,并降低了代码引入失误的风险,同时降低了代码打包所需的维护成本。
技术领域
本发明涉及计算机应用技术领域,尤其涉及代码打包方法、装置、计算机设备及存储介质。
背景技术
目前,软件项目开发中,其前端采用JavaScript语言的新一代语法标准ECMAScript 6或ECMAScript 7进行JS(JavaScript)代码编写,但浏览器并不能很好支持这些语法,因此,在将上述JS代码部署到浏览器环境之前,需要先执行转译的过程,即将JS代码转换成浏览器可识别语法的代码。这个转换过程在软件项目开发中称为打包,且可将打包后生成的文件称为bundle文件。一般地,在软件项目开发中,编写Javascript框架(库)和业务代码时,经常会遇到需要在测试环境和生产环境提供不同代码的场景(如,测试环境下需要提供比生产环境下更多的代码模块),由此,不同环境下进行打包时其参与打包的代码模块存在不同。
现有的打包方案中,对于同一个开发项目,为实现不同环境的打包操作,通常会对应不同环境设定不同入口文件,然后将不同环境所需的代码模块分别引入(复制)到环境对应的入口文件,最终对不同环境的入口文件进行编译得到相应环境的打包文件。现有打包方法的不足在于:1)对于不同环境都具备的代码模块,需要重复引入到不同入口文件,造成了不必要的空间资源占用;2)对于归属不同环境的特定代码模块,需要人为确定特定代码模块归属的入口文件并进行相应引入,由此增大了人力资源占用同时增大了代码引入失误的风险;3)对于一个代码模块,如果其中既包含了归属于两个环境的公共代码,又包含了归属任一环境的非公共代码,此时需要抽离该代码模块中的公共代码部分并将该部分重定义为新代码模块,但该种代码抽离形成新代码模块的方式容易增加代码模块的总数量,从而增大了所开发软件的维护成本。
发明内容
本发明实施例提供了代码打包方法、装置、计算机设备及存储介质,简单高效的实现了不同打包环境下所需代码模块的打包。
第一方面,本发明实施例提供了一种代码打包方法,包括:
确定应用软件的入口文件中所包括代码模块的当前引入状态;
根据用户选定的待打包环境及各所述当前引入状态,确定所述入口文件中待调整引入状态的目标代码模块;
调整各所述目标代码模块的当前引入状态,获得待编译入口文件;
编译所述待编译入口文件,获得所述待打包环境对应的打包文件。
进一步地,所述当前引入状态包括:非可读状态和可读状态;
相应的,所述确定应用软件的入口文件中所包括代码模块的当前引入状态,包括:确定应用软件的入口文件中带有注释标记的代码模块的当前引入状态为非可读状态;确定所述入口文件中未带注释标记的代码模块的当前引入状态为可读状态。
进一步地,所述注释标记为:包括设定注释标识符和设定关键标识的字符串。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京城市网邻信息技术有限公司,未经北京城市网邻信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910044789.3/2.html,转载请声明来源钻瓜专利网。