【技术实现步骤摘要】
一种插件加载方法及装置
[0001]本公开涉及计算机
,具体而言,涉及一种插件加载方法及装置。
技术介绍
[0002]应用程序通常会开放面向开发者或有相关经验的用户的操作接口,也即命令行界面(Command
‑
Line Interface,CLI),用户可以通过命令行界面输入指令,计算机设备在接收到指令后予以执行,具有命令行界面功能的模块可以被称为命令行工具。
[0003]随着命令行工具支持的功能越来越多,其代码规格也会越来越庞大,为了缓解大量代码带来的性能降低,通常采用插件系统将不同功能的代码分离到不同的文件来进行选择性的安装和使用,命令行工具在启动时会进行插件扫描,然后按照预定的逻辑对扫描到的插件加载。然而,随着插件数量的不断增加,命令行工具的运行时的性能仍会不断下降,最终变为无法正常使用的状态。
技术实现思路
[0004]本公开实施例至少提供一种插件加载方法及装置。
[0005]第一方面,本公开实施例提供了一种插件加载方法,包括:
[0006]响应于目标命 ...
【技术保护点】
【技术特征摘要】
1.一种插件加载方法,其特征在于,包括:响应于目标命令行工具的启动指令,加载并运行所述目标命令行工具的本体文件;加载所述目标命令行工具安装的至少一个待加载插件的定义文件,并从所述待加载插件的定义文件中读取出所述待加载插件对应的激活事件;在运行所述目标命令行工具的过程中,若检测到任一所述激活事件,将检测到的所述激活事件对应的待加载插件作为目标插件,并加载所述目标插件。2.根据权利要求1所述的方法,其特征在于,所述加载所述目标插件,包括:确定与所述目标插件之间存在依赖关系的依赖插件;基于所述依赖关系依次加载所述依赖插件及所述目标插件。3.根据权利要求1所述的方法,其特征在于,所述加载所述目标插件,包括:从加载结果列表中查找所述目标插件对应的历史加载结果;若所述历史加载结果存在,则将所述历史加载结果作为加载所述目标插件的加载结果。4.根据权利要求1所述的方法,其特征在于,所述加载所述目标插件,包括:从加载结果列表中查找所述目标插件对应的历史加载结果;若所述历史加载结果不存在,则加载所述目标插件的代码入口文件;将所述代码入口文件的加载结果添加至所述加载结果列表中。5.根据权利要求3或4所述的方法,其特征在于,在加载所述目标命令行工具安装的至少一个待加载插件的定义文件之前,所述方法还包括:建立加载结果列表;将所述目标命令行工具的本体文件的加载结果,以及所述目标命令行工具对应的应用程序接口的加...
【专利技术属性】
技术研发人员:李博,
申请(专利权)人:北京字节跳动网络技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。