CN117311838A - 基于动态插件的文件处理方法、装置、设备及存储介质 - Google Patents

基于动态插件的文件处理方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN117311838A
CN117311838A CN202210731415.0A CN202210731415A CN117311838A CN 117311838 A CN117311838 A CN 117311838A CN 202210731415 A CN202210731415 A CN 202210731415A CN 117311838 A CN117311838 A CN 117311838A
Authority
CN
China
Prior art keywords
plug
target
dynamic
file
address
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.)
Pending
Application number
CN202210731415.0A
Other languages
English (en)
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.)
Beijing Zitiao Network Technology Co Ltd
Original Assignee
Beijing Zitiao Network Technology 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 Beijing Zitiao Network Technology Co Ltd filed Critical Beijing Zitiao Network Technology Co Ltd
Priority to CN202210731415.0A priority Critical patent/CN117311838A/zh
Publication of CN117311838A publication Critical patent/CN117311838A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • G06F9/44526Plug-ins; Add-ons
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本公开实施例提供一种基于动态插件的文件处理方法、装置、设备及存储介质,通过在集成开发工具运行过程中,检测预设的插件加载地址;若检测到动态插件,则在集成开发工具的界面内,显示动态插件对应的插件标识,动态插件基于Java归档文件加载;响应于针对插件标识的触发指令,调用动态插件处理目标文件,生成处理结果。由于将动态插件设置在插件加载地址后,通过Java的Java归档文件加载机制,能够实现对插件的动态加载,因此可以在不重启集成开发工具的情况下,实现对动态插件的调用,完成对目标文件的处理,缩短插件加载过程的耗时,提高集成开发工具中调用插件进行文件处理的工作效率。

Description

基于动态插件的文件处理方法、装置、设备及存储介质
技术领域
本公开实施例涉及互联网技术领域,尤其涉及一种基于动态插件的文件处理方法、装置、设备及存储介质。
背景技术
集成开发工具,也称为集成开发环境(Integrated Development Environment,IDE),是用于提供程序开发环境的应用程序,一般由代码编辑器、调试器和图形用户界面等部分构成。基于终端设备运行集成开发工具,可以实现代码编写、分析、编译等一系列功能,从而实现软件程序的开发。
现有技术中,在集成开发工具的基础上,可以通过加载功能插件的方式,实现软件开发过程中的各类个性化需求,然而,现有技术中的功能插件在基础开发工具中被加载后,需要对集成开发工具进行重启才能生效,导致了在集成开发工具中加载功能插件的耗时长、使用效率低下的问题。
发明内容
本公开实施例提供一种基于动态插件的文件处理方法、装置、设备及存储介质,以克服现有技术中的功能插件在基础开发工具中被加载后,需要对集成开发工具进行重启才能生效的问题。
第一方面,本公开实施例提供一种基于动态插件的文件处理方法,包括:
在集成开发工具运行过程中,检测预设的插件加载地址;若检测到动态插件,则在集成开发工具的界面内,显示所述动态插件对应的插件标识,所述动态插件基于Java归档文件加载;响应于针对所述插件标识的触发指令,调用所述动态插件处理目标文件,生成处理结果。
第二方面,本公开实施例提供一种基于动态插件的文件处理装置,包括:
检测模块,用于在集成开发工具运行过程中,检测预设的插件加载地址;
显示模块,用于若检测到动态插件,则在集成开发工具的界面内,显示所述动态插件对应的插件标识,所述动态插件基于Java归档文件加载;
处理模块,用于响应于针对所述插件标识的触发指令,调用所述动态插件处理目标文件,生成处理结果。
第三方面,本公开实施例提供一种电子设备,包括:
处理器,以及与所述处理器通信连接的存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,以实现如上第一方面以及第一方面各种可能的设计所述的基于动态插件的文件处理方法。
第四方面,本公开实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如上第一方面以及第一方面各种可能的设计所述的基于动态插件的文件处理方法。
第五方面,本公开实施例提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如上第一方面以及第一方面各种可能的设计所述的基于动态插件的文件处理方法。
本实施例提供的基于动态插件的文件处理方法、装置、设备及存储介质,通过在集成开发工具运行过程中,检测预设的插件加载地址;若检测到动态插件,则在集成开发工具的界面内,显示所述动态插件对应的插件标识,所述动态插件基于Java归档文件加载;响应于针对所述插件标识的触发指令,调用所述动态插件处理目标文件,生成处理结果。由于将动态插件设置在插件加载地址后,通过Java的Java归档文件加载机制,能够实现对插件的动态加载,因此可以在不重启集成开发工具的情况下,实现对动态插件的调用,完成对目标文件的处理,缩短插件加载过程的耗时,提高集成开发工具中调用插件进行文件处理的工作效率。
附图说明
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施例提供的基于动态插件的文件处理方法的一种应用场景图;
图2为本公开实施例提供的基于动态插件的文件处理方法的流程示意图一;
图3为图2所示实施例中步骤S101的具体实现方式流程图;
图4为本公开实施例提供的一种集成开发工具的界面示意图;
图5为本公开实施例提供的另一种集成开发工具的界面示意图;
图6为图2所示实施例中步骤S103的具体实现方式流程图;
图7为本公开实施例提供的基于动态插件的文件处理方法的流程示意图二;
图8为本公开实施例提供的一种基于开发项目存储目标插件的示意图;
图9为本公开实施例提供的基于动态插件的文件处理方法的流程示意图三;
图10为本公开实施例提供的一种显示功能测试插件的示意图;
图11为本公开实施例提供的基于动态插件的文件处理装置的结构框图;
图12为本公开实施例提供的一种电子设备的结构示意图;
图13为本公开实施例提供的电子设备的硬件结构示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
下面对本公开实施例的应用场景进行解释:
图1为本公开实施例提供的基于动态插件的文件处理方法的一种应用场景图,本公开实施例提供的基于动态插件的文件处理方法,可以应用于应用程序开发的场景下。更具体地,可以应用于应用程序的分布式开发的应用场景下。本公开实施例提供的方法,可以应用于终端设备,例如个人电脑。开发者用户通过终端设备内运行的集成开发工具,对目标应用中的一个功能模块进行程序开发,并将开发后生成的代码文件、库文件上传至云服务器内的代码仓库。如图1所示,开发者用户基于终端设备A开发目标应用程序中的a功能模块,并将对应的代码文件上传至服务器的代码仓库;开发者用户基于终端设备B开发目标应用程序中的b功能模块,并将对应的代码文件上传至服务器的代码仓库,终端设备C开发目标应用程序中的c功能模块,并将对应的库文件上传至服务器的代码仓库。多个开发者用户基于上述过程,共同实现对目标应用程序的开发。
基于上述分布式开发的应用场景,开发者用户在通过集成开发工具进行功能模块开发时,不同的开发者用户(基于终端设备),对应不同的功能模块的开发任务,例如,用户A通过集成开发工具,开发目标应用中的图像处理功能模块,用户B通过集成开发工具,开发目标应用中的网络通信功能模块。进一步地,在开发不同的功能模块的过程中,由于功能模块的差异,会对应产生个性化的开发需求,例如,在开发图像处理功能模块的过程中,需要使用图像压缩的功能,来进行功能实现或功能测试;在开发网络通信功能模块的过程中,需要使用信号滤波的功能,来进行功能实现或功能测试。
现有技术中,上述个性化的功能需求,可以通过在集成开发工具中预加载功能插件的方式来实现,然而,现有技术中的功能插件在集成开发工具中被加载后,需要对集成开发工具进行重启才能生效,这是由于,现有技术中对功能插件的加载,是以静态加载的方式实现的,即基于一个预设的加载地址,在集成开发工具启动时,对该加载地址下的所有插件进行预加载。之后,即可在集成开发工具中对上述预加载的插件进行调用。但需要增加新的插件时,将插件包导入上述预设的加载地址后,集成开发工具不会对其进行检测,也不会对该插件进行显示,必须重新启动,再次经过上述的预加载过程后,才能将新添加的插件显示出来,并根据需要进行调用。这导致了在集成开发工具中加载功能插件的耗时长、使用效率低下的问题。本公开实施例提供一种基于动态插件的文件处理方法以解决上述问题。
参考图2,图2为本公开实施例提供的基于动态插件的文件处理方法的流程示意图一。本实施例的方法可以应用在终端设备中,该基于动态插件的文件处理方法包括:
步骤S101:在集成开发工具运行过程中,检测预设的插件加载地址。
示例性地,集成开发工具又称为集成开发环境,是用于提供程序开发环境的应用程序。更具体地,例如,本实施例中的基础开发工具可以为IDEA终端设备在运行集成开发工具后,显示集成开发工具的图形用户界面,开发者用户通过操作终端,基于集成开发工具进行程序开发。其中,在集成开发工具运行后,终端设备会实时对插件加载地址进行扫描,从而检测插件加载地址下的文件。其中,插件加载地址是预设的本地存储地址或网络存储地址,该插件加载地址的设置,可以通过配置文件或配置信息实现。在一种可能的实现方式中,如图3所示,步骤S101的具体实现方式包括:
步骤S1011:加载配置信息,配置信息用于指示存储目标动态插件的目标插件地址,其中,目标插件地址位于与终端设备通信的第一服务器。
步骤S1012:根据配置信息,对目标插件地址进行检测。
示例性地,在多端协同开发的应用场景下,开发者用户会基于自身的开发任务,针对性的开发所需的动态插件,即目标动态插件。例如,针对图像处理功能模块的开发任务,开发者用户基于集成开发工具,开发了图像压缩插件;而针对视频播放功能模块的开发任务,开发者用户基于集成开发工具,开发了视频插帧插件。其中,图像压缩插件(以及其他归属于图像处理功能模块的插件),对应插件地址Addr_1;视频插帧插件(以及其他归属于视频播放功能模块的插件),对应插件地址Addr_2。而配置信息则是用于指示插件地址的信息,即根据配置信息,可以选择将Addr_1或Addr_2作为目标插件地址,从而对目标插件地址下的插件(图像压缩插件或视频插帧插件)进行检测。
本实施例中,通过加载配置信息,并根据配置信息对对应的目标插件地址进行检测,可以实现对不同类别的动态插件的分类加载,从而实现针对不同的开发任务下,加载对应的动态插件,提高插件加载的准确性,以及集成开发工具的界面整洁度,避免加载过多未分类插件,影响插件标识的显示效果。
步骤S102:若检测到动态插件,则在集成开发工具的界面内,显示动态插件对应的插件标识,动态插件基于Java归档文件加载。
示例性地,在针对插件加载地址进行检测后,若检测到该插件加载地址下存在插件文件,则将该动态插件对应的插件标识显示在集成开发工具的界面(即图像用户界面)。其中,示例性地,插件标识可以包括序号、文字、图标中的至少一种。示例性地,动态插件对应的插件标识,可以为动态插件对应的插件文件的文件名,或者对插件文件进行解压后,插件文件内包含的图片。
其中,动态插件对应的插件文件为Java归档文件(Java Archive,Jar),即以Jar为扩展名的文件(或者以Zip为扩展名的文件)。Java归档文件通常用于聚合大量的Java类文件、相关的元数据和资源(文本、图片等)文件到一个文件,以便开发Java平台应用软件或库,本实施例中,通过对应的Java归档文件实现动态插件的功能。
进一步地,在一种可能的实现方式中,检测到动态插件的判断方法包括:若检测到该插件加载地址下的文件,其文件名符合预设的命名要求,则确定检测到动态插件。具体地,例如,若检测到插件加载地址下包含以Jar作为扩展名的文件(Jar包),则将该Jar包确定为一个动态插件;在另一种可能的实现方式中,检测到动态插件的判断方法包括:若检测到该插件加载地址下的文件符合预设的命名要求,则对其文件内容进行验证,若通过验证,则确定检测到动态插件。
可选地,集成开发工具的界面内包括第一插件区域和第二插件区域,第一插件区域用于显示预加载的静态插件,第二插件区域用于显示动态插件。
图4为本公开实施例提供的一种集成开发工具的界面示意图,如图4所示,集成开发工具的界面内包括位于不同区域的第一插件区域和第二插件区域,第一插件区域和第二插件区域能够同时显示在集成开发工具的界面内。其中,第一插件区域用于显示预加载的静态插件,即集成开发工具通过传统的预加载方式加载的插件的插件标识,例如图标、插件名称等。第一插件区域内显示的静态插件是在集成开发工具启动时加载的,因此在集成开发工具运行过程中,即使向静态插件对应的预设地址内存储新的插件文件,第一插件区域内也不会更新,而只有在集成开发工具重启后,第一插件区域内显示的静态插件才会更新。而第二插件区域用于显示动态插件,即插件加载地址对应的插件,每当插件加载地址内的文件发生变动时,会对应的实时体现在第二插件区域,例如新增、删除插件标识,实现对动态插件的动态展示。
图5为本公开实施例提供的另一种集成开发工具的界面示意图,如图5所示,集成开发工具的界面内包括位于相同(或相近)区域的第一插件区域和第二插件区域,第一插件区域和第二插件区可以通过例如图中示例性示出的切换栏,择一的显示在集成开发工具的界面内。如图5所示,图中示为点击切换栏左侧时,显示第一插件区域;当点击切换栏右侧时(图中未示出),会在相同位置显示第二插件区域,从而实现对静态插件和动态插件的分别显示。其中,第一插件区域和第二插件区域的具体功能,与图4中所介绍的功能相同,此处不再赘述。
步骤S103:响应于针对插件标识的触发指令,调用动态插件处理目标文件,生成处理结果。
示例性地,参考图4或图5所示的集成开发工具的界面示意图,在集成开发工具的界面内,通过插件区域显示插件标识后,用户通过终端设备的人机交互单元,例如触摸屏、鼠标,触发插件标识,从而生成针对插件标识的触发指令。之后,响应于针对插件标识的触发指令,调用动态插件对应的执行函数,来执行对应的方法对目标文件进行处理,生成处理结果。例如目标文件为图片,动态插件用于对图片进行压缩,生成压缩图片。
在一种可能的实现方式中,如图6所示,步骤S103的具体实现方式包括:
步骤S1031:获取动态插件对应的Java归档文件。
步骤S1032:基于Java的类加载机制,将Java归档文件加载至Java虚拟机,运行动态插件对应的功能类。
步骤S1033:基于动态插件对应的功能类,处理目标文件,生成处理结果。
示例性地,在显示动态插件的插件标识后,该动态插件仅进行(标识)显示,而不进行加载和调用,之后,响应于针对动态插件对应的插件标识的触发指令,获得对应的Jar包,基于Java的类加载机制,将Jar包加载至虚拟机,基于Jar包中的内容,运行动态插件对应的功能类,具体包括对功能类的实例化和调用对应的实例的方法,并在该过程中将目标文件作为输入进行处理,从而完成通过该动态插件处理目标文件的过程。其中,基于Java的类实例化,以及对应的实例方法调用,可以基于具体的功能类设置,此处不再赘述。
在本实施例中,通过在集成开发工具运行过程中,检测预设的插件加载地址;若检测到动态插件,则在集成开发工具的界面内,显示动态插件对应的插件标识,动态插件基于Java归档文件加载;响应于针对插件标识的触发指令,调用动态插件处理目标文件,生成处理结果。由于将动态插件设置在插件加载地址后,通过Java的Java归档文件加载机制,能够实现对插件的动态加载,因此可以在不重启集成开发工具的情况下,实现对动态插件的调用,完成对目标文件的处理,缩短插件加载过程的耗时,提高集成开发工具中调用插件进行文件处理的工作效率。
参考图7,图7为本公开实施例提供的基于动态插件的文件处理方法的流程示意图二。本实施例在图2所示实施例的基础上,进一步详细描述了在步骤S101之前生成动态插件以及配置动态插件的过程,该基于动态插件的文件处理方法包括:
步骤S201:生成目标插件。
本实施例中,目标插件是在开发任务进行过程中,开发者用户基于需要,通过输入代码指令,而生成的具有特殊功能的插件。具体地,生成目标插件的实现方法包括:终端设备接收代码指令,生成用于实现目标功能的代码文件;终端设备接收压缩指令,对至少一个代码文件进行压缩,生成Java归档文件,得到目标插件。
步骤S202:获取开发项目信息,开发项目信息表征通过集成开发工具建立的开发项目。
步骤S203:将目标插件存储至与开发项目信息对应的插件加载位置。
示例性地,在生成目标插件后,将目标插件存储在插件加载地址下,终端设备会检测该插件加载地址,从而动态的显示目标插件对应的目标插件标识。其中,本实施例中,插件加载地址是基于开发项目信息动态确定的。具体地,通过集成开发工具进行目标应用的开发过程中,首先需要建立一个开发项目(Project),之后针对不同的开发项目,进行相应的功能开发,并在对应项目地址下存储相应的项目开发文件。在不同的集成开发工具中,开发项目的表达方式可能有所不同,但建立开发项目,并基于开发项目进行相应的功能开发的具体实现为现有技术,此处不再赘述。
进一步地,本实施例中,终端设备在生成目标插件后,读取表征开发项目的内容的开发项目信息,示例性地,开发项目信息中包括对应的开发项目的项目地址,以及与开发项目相关的描述信息,之后,基于开发项目信息,将目标插件存储至对其中的一个或多个开发项目对应的项目地址下的插件加载位置。图8为本公开实施例提供的一种基于开发项目存储目标插件的示意图,如图8所示,获得目标插件后,通过开发项目信息,确定通过集成开发工具建立的开发项目包括开发项目#1、开发项目#2、开发项目#3。之后,基于用户指令,或者基于开发项目信息中对针对各开发项目的描述信息,将目标插件存储至开发项目#1对应的项目地址下的插件加载位置Addr_1,以及,将目标插件存储至开发项目#2对应的项目地址下的插件加载位置Addr_2。
本实施例中,通过开发项目信息,将开发好的目标插件,存储至对应的项目地址下的插件加载位置,从而实现目标插件与匹配的开发项目的绑定,在后续的加载动态插件的过程中,在不同的开发项目运行时,集成开发工具的界面内会相应的展示不同的动态插件,从而实现动态插件的精准展示,避免集成开发工具的界面内不加区分的展示动态插件造成的插件过多问题,提高集成开发工具的效率。
步骤S204:在集成开发工具运行过程中,获取集成开发工具当前加载的目标开发项目。
步骤S205:基于目标开发项目,确定对应的目标插件地址,并检测目标插件地址。
步骤S206:若检测到目标插件,则在集成开发工具的界面内,显示目标插件对应的目标插件标识。
示例性地,参考图8所示的存储目标插件的示意图,在目标插件生成后,基于开发项目信息,实现了目标插件与开发项目之间的绑定,不同的开发项目对应不同的插件地址。本实施例中,在集成开发工具运行过程,终端设备首先获取当前加载的目标开发项目,之后,基于当前加载的目标开发项目,确定对应的目标插件地址,即目标开发项目对应的项目地址下的插件加载地址。进而,以该目标插件地址为目标,实时检测该地址下的插件文件,即是否存在对应的Jar包。
本实施例中,通过获取当前加载的目标开发项目,并基于目标开发项目对应的目标插件地址进行检测,一方面,由于每一开发项目对应特定的少量目标插件,因此针对仅针对当前运行的目标开发项目进行插件检索,可以有效的提高检测速度,较少针对目标插件地址下的动态插件进行检测造成计算资源消耗;另一方面,在针对不同的目标开发项目进行匹配性的动态插件显示,避免了大量与当前加载的目标开发项目无关的动态插件在集成开发工具的界面内显示,提高动态插件的显示效果,避免动态插件过多影响操作效率的问题。
步骤S207:响应于针对目标插件标识的触发指令,调用目标插件处理目标文件,生成处理结果。
本实施例中,步骤S207的实现方式与本公开图2所示实施例中的步骤S103的实现方式相同,在此不再一一赘述。
参考图9,图9为本公开实施例提供的基于动态插件的文件处理方法的流程示意图三。本实施例在图2所示实施例的基础上,增加了自动生成目标插件的具体步骤,本实施例中,目标插件为功能测试插件,该基于动态插件的文件处理方法包括:
步骤S301:在集成开发工具运行过程中,当检测到目标代码文件更新时,基于目标代码文件的代码结构,生成至少一个对应的目标测试用例文件。
步骤S302:基于目标测试用例文件,生成或更新目标代码文件对应的功能测试插件,功能测试插件用于被触发后,执行目标测试用例文件,并输出测试结果。
示例性地,在集成开发工具运行过程中,终端设备通过预设的代码文件检测服务,对代码文件的变动进行检测,当检测到目标代码文件更新时,基于目标代码文件的代码结构,生成至少一个对应的目标测试用例文件,具体地,例如,通过解析代码结构,根据目标代码文件中的逻辑语句(例如条件语句、循环语句)、数值计算语句、赋值语句等具体的代码内容,构造对应的测试用例,并形成文件,即目标测试用例文件。其中,基于代码结构自动生成测试用例的实现方式为现有技术,此处不再赘述。
之后,基于得到的目标测试用例文件,自动生成一个用于基于该目标测试用例文件对目标代码文件进行测试的脚本程序,即功能测试插件。触发该功能测试插件后,终端设备会基于该目标测试用例文件,对目标代码文件进行测试,并输出测试结果(例如是否捕捉到异常)。
步骤S303:实时检测预设的插件加载地址。
步骤S304:若检测到生成或更新的功能测试插件,则在集成开发工具的界面内,显示生成或更新的功能测试插件对应的插件标识。
步骤S305:响应于针对功能测试插件的触发指令,执行目标测试用例文件,输出测试结果。
本实施例中,步骤303-步骤305的实现方式与本公开图2所示实施例中的步骤S101-步骤S103的实现方式类似,具体可参见图2所示实施例中相关介绍,在此不再一一赘述。
图10为本公开实施例提供的一种显示功能测试插件的示意图,如图10所示,基于图9所示实施例中提高的基于动态插件的文件处理方法,集成开发工具的图形化界面内,包括编码区域和插件区域,示例性地,如图10中所示,插件区域可以与编码区域同时显示。开发者用户在修改编码区域内的目标代码文件,并点击“保存”后,终端设备基于目标代码文件的变更,自动生成对应的测试用例文件,再基于测试用例文件生成,生成功能测试插件,并存储在预设的插件加载位置,之后,终端设备通过实时检测插件加载位置,将功能测试插件对应的图标显示在插件区域。之后,开发者用户通过操作终端设备,点击该功能测试插件对应的图标,即可实现对之前“保存”的目标代码文件进行单元测试。
本实施例提供了一种基于动态插件实现的快速单元测试方法,通过实时的检测目标代码文件的更新,生成一种用于对目标代码文件进行动态测试的插件,即测试功能插件。该测试功能插件随着目标代码文件的更新而更新,因此,可以实现对目标代码文件的动态测试。同时,利用动态插件无需重启集成开发工具,可以动态展示、动态加载的特点,实现了在利用集成开发工具进行程序开发的过程中,通过动态插件对当前的目标代码文件进行动态测试,实现了快速的单元测试,提高了通过集成开发工具进行程序开发过程中的代码开发效率,减少了代码出错率。
对应于上文实施例的基于动态插件的文件处理方法,图11为本公开实施例提供的基于动态插件的文件处理装置的结构框图。为了便于说明,仅示出了与本公开实施例相关的部分。参照图11,基于动态插件的文件处理装置4包括:
检测模块41,用于在集成开发工具运行过程中,检测预设的插件加载地址;
显示模块42,用于若检测到动态插件,则在集成开发工具的界面内,显示动态插件对应的插件标识,动态插件基于Java归档文件加载;
处理模块43,用于响应于针对插件标识的触发指令,调用动态插件处理目标文件,生成处理结果。
在本公开的一个实施例中,集成开发工具的界面内包括第一插件区域和第二插件区域;其中,第一插件区域用于显示预加载的静态插件,第二插件区域用于显示动态插件。
在本公开的一个实施例中,处理模块43,具体用于:获取动态插件对应的Java归档文件;基于Java的类加载机制,将Java归档文件加载至Java虚拟机,运行动态插件对应的功能类;基于动态插件对应的功能类,处理目标文件,生成处理结果。
在本公开的一个实施例中,在集成开发工具运行过程中,检测模块41具体用于:加载配置信息,配置信息用于指示存储目标动态插件的目标插件地址,其中,目标插件地址位于与终端设备通信的第一服务器;根据配置信息,对目标插件地址进行检测。
在本公开的一个实施例中,在检测预设的插件加载地址之前,处理模块43,还用于:获取集成开发工具当前加载的目标开发项目;基于目标开发项目,确定对应的目标插件地址;检测模块41在检测预设的插件加载地址时,具体用于:检测目标插件地址。
在本公开的一个实施例中,处理模块43在检测预设的插件加载地址之前,还用于:生成目标动态插件;将目标动态插件存储至插件加载位置。
在本公开的一个实施例中,处理模块43在将目标动态插件存储至插件加载位置时,具体用于:获取开发项目信息,开发项目信息表征通过集成开发工具建立的开发项目;将目标动态插件存储至与开发项目信息对应的插件加载位置。
在本公开的一个实施例中,目标动态插件为功能测试插件,处理模块43在生成动态插件时,具体用于:检测到目标代码文件更新时,基于目标代码文件的代码结构,生成至少一个对应的目标测试用例文件;基于目标测试用例文件,生成或更新目标代码文件对应的功能测试插件,功能测试插件用于被触发后,执行目标测试用例文件,并输出测试结果。
其中,检测模块41、显示模块42、处理模块43依次连接。本实施例提供的基于动态插件的文件处理装置4可以执行上述方法实施例的技术方案,其实现原理和技术效果类似,本实施例此处不再赘述。
图12为本公开实施例提供的一种电子设备的结构示意图,如图12所示,该电子设备5包括:
处理器51,以及与处理器51通信连接的存储器52;
存储器52存储计算机执行指令;
处理器51执行存储器52存储的计算机执行指令,以实现如图2-图10所示实施例中的基于动态插件的文件处理方法。
其中,可选地,处理器51和存储器52通过总线53连接。
相关说明可以对应参见图2-图10所对应的实施例中的步骤所对应的相关描述和效果进行理解,此处不做过多赘述。
参考图13,其示出了适于用来实现本公开实施例的电子设备900的结构示意图,该电子设备900可以为终端设备或服务器。其中,终端设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、个人数字助理(Personal Digital Assistant,简称PDA)、平板电脑(Portable Android Device,简称PAD)、便携式多媒体播放器(Portable MediaPlayer,简称PMP)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图13示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图13所示,电子设备900可以包括处理装置(例如中央处理器、图形处理器等)901,其可以根据存储在只读存储器(Read Only Memory,简称ROM)902中的程序或者从存储装置908加载到随机访问存储器(Random Access Memory,简称RAM)903中的程序而执行各种适当的动作和处理。在RAM 903中,还存储有电子设备900操作所需的各种程序和数据。处理装置901、ROM 902以及RAM 903通过总线904彼此相连。输入/输出(I/O)接口905也连接至总线904。
通常,以下装置可以连接至I/O接口905:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置906;包括例如液晶显示器(Liquid CrystalDisplay,简称LCD)、扬声器、振动器等的输出装置907;包括例如磁带、硬盘等的存储装置908;以及通信装置909。通信装置909可以允许电子设备900与其他设备进行无线或有线通信以交换数据。虽然图13示出了具有各种装置的电子设备900,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置909从网络上被下载和安装,或者从存储装置908被安装,或者从ROM902被安装。在该计算机程序被处理装置901执行时,执行本公开实施例的方法中限定的上述功能。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备执行上述实施例所示的方法。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LocalArea Network,简称LAN)或广域网(Wide Area Network,简称WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定,例如,第一获取单元还可以被描述为“获取至少两个网际协议地址的单元”。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上***(SOC)、复杂可编程逻辑设备(CPLD)等等。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行***、装置或设备使用或与指令执行***、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体***、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
第一方面,根据本公开的一个或多个实施例,提供了一种基于动态插件的文件处理方法,包括:
在集成开发工具运行过程中,检测预设的插件加载地址;若检测到动态插件,则在集成开发工具的界面内,显示所述动态插件对应的插件标识,所述动态插件基于Java归档文件加载;响应于针对所述插件标识的触发指令,调用所述动态插件处理目标文件,生成处理结果。
根据本公开的一个或多个实施例,所述集成开发工具的界面内包括第一插件区域和第二插件区域;其中,所述第一插件区域用于显示预加载的静态插件,所述第二插件区域用于显示所述动态插件。
根据本公开的一个或多个实施例,响应于针对所述插件标识的触发指令,调用所述动态插件处理目标文件,生成处理结果,包括:获取所述动态插件对应的Java归档文件;基于Java的类加载机制,将所述Java归档文件加载至Java虚拟机,运行所述动态插件对应的功能类;基于所述动态插件对应的功能类,处理所述目标文件,生成所述处理结果。
根据本公开的一个或多个实施例,检测预设的插件加载地址,包括:加载配置信息,所述配置信息用于指示存储目标动态插件的目标插件地址,其中,所述目标插件地址位于与终端设备通信的第一服务器;根据所述配置信息,对所述目标插件地址进行检测。
根据本公开的一个或多个实施例,在所述检测预设的插件加载地址之前,所述方法还包括:获取所述集成开发工具当前加载的目标开发项目;基于所述目标开发项目,确定对应的目标插件地址;所述检测预设的插件加载地址,包括:检测所述目标插件地址。
根据本公开的一个或多个实施例,在所述检测预设的插件加载地址之前,所述方法还包括:生成目标动态插件;将所述目标动态插件存储至所述插件加载位置。
根据本公开的一个或多个实施例,所述将所述目标动态插件存储至所述插件加载位置,包括:获取开发项目信息,所述开发项目信息表征通过所述集成开发工具建立的开发项目;将所述目标动态插件存储至与所述开发项目信息对应的插件加载位置。
根据本公开的一个或多个实施例,所述目标动态插件为功能测试插件,所述生成动态插件,包括:检测到目标代码文件更新时,基于所述目标代码文件的代码结构,生成至少一个对应的目标测试用例文件;基于所述目标测试用例文件,生成或更新所述目标代码文件对应的功能测试插件,所述功能测试插件用于被触发后,执行所述目标测试用例文件,并输出测试结果。
第二方面,根据本公开的一个或多个实施例,提供了一种基于动态插件的文件处理装置,包括:
检测模块,用于在集成开发工具运行过程中,检测预设的插件加载地址;
显示模块,用于若检测到动态插件,则在所述集成开发工具的界面内,显示所述动态插件对应的插件标识,所述动态插件基于Java归档文件加载;
处理模块,用于响应于针对所述插件标识的触发指令,调用所述动态插件处理目标文件,生成处理结果。
根据本公开的一个或多个实施例,所述集成开发工具的界面内包括第一插件区域和第二插件区域;其中,所述第一插件区域用于显示预加载的静态插件,所述第二插件区域用于显示所述动态插件。
根据本公开的一个或多个实施例,所述处理模块,具体用于:获取所述动态插件对应的Java归档文件;基于Java的类加载机制,将所述Java归档文件加载至Java虚拟机,运行所述动态插件对应的功能类;基于所述动态插件对应的功能类,处理所述目标文件,生成所述处理结果。
根据本公开的一个或多个实施例,在集成开发工具运行过程中,检测模块具体用于:加载配置信息,所述配置信息用于指示存储目标动态插件的目标插件地址,其中,所述目标插件地址位于与终端设备通信的第一服务器;根据所述配置信息,对所述目标插件地址进行检测。
根据本公开的一个或多个实施例,在所述检测预设的插件加载地址之前,所述处理模块,还用于:获取所述集成开发工具当前加载的目标开发项目;基于所述目标开发项目,确定对应的目标插件地址;所述检测模块在检测预设的插件加载地址时,具体用于:检测所述目标插件地址。
根据本公开的一个或多个实施例,处理模块在所述检测预设的插件加载地址之前,还用于:生成目标动态插件;将所述目标动态插件存储至所述插件加载位置。
根据本公开的一个或多个实施例,处理模块在将所述目标动态插件存储至所述插件加载位置时,具体用于:获取开发项目信息,所述开发项目信息表征通过所述集成开发工具建立的开发项目;将所述目标动态插件存储至与所述开发项目信息对应的插件加载位置。
根据本公开的一个或多个实施例,所述目标动态插件为功能测试插件,所述处理模块在生成动态插件时,具体用于:检测到目标代码文件更新时,基于所述目标代码文件的代码结构,生成至少一个对应的目标测试用例文件;基于所述目标测试用例文件,生成或更新所述目标代码文件对应的功能测试插件,所述功能测试插件用于被触发后,执行所述目标测试用例文件,并输出测试结果。
第三方面,根据本公开的一个或多个实施例,提供了一种电子设备,包括:处理器,以及与所述处理器通信连接的存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,以实现如上第一方面以及第一方面各种可能的设计所述的基于动态插件的文件处理方法。
第四方面,根据本公开的一个或多个实施例,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如上第一方面以及第一方面各种可能的设计所述的基于动态插件的文件处理方法。
第五方面,本公开实施例提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如上第一方面以及第一方面各种可能的设计所述的基于动态插件的文件处理方法。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
此外,虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。

Claims (12)

1.一种基于动态插件的文件处理方法,其特征在于,包括:
在集成开发工具运行过程中,检测预设的插件加载地址;
若检测到动态插件,则在所述集成开发工具的界面内,显示所述动态插件对应的插件标识,所述动态插件基于Java归档文件加载;
响应于针对所述插件标识的触发指令,调用所述动态插件处理目标文件,生成处理结果。
2.根据权利要求1所述的方法,其特征在于,所述集成开发工具的界面内包括第一插件区域和第二插件区域;
其中,所述第一插件区域用于显示预加载的静态插件,所述第二插件区域用于显示所述动态插件。
3.根据权利要求1所述的方法,其特征在于,响应于针对所述插件标识的触发指令,调用所述动态插件处理目标文件,生成处理结果,包括:
获取所述动态插件对应的Java归档文件;
基于Java的类加载机制,将所述Java归档文件加载至Java虚拟机,运行所述动态插件对应的功能类;
基于所述动态插件对应的功能类,处理所述目标文件,生成所述处理结果。
4.根据权利要求1所述的方法,其特征在于,检测预设的插件加载地址,包括:
加载配置信息,所述配置信息用于指示存储目标动态插件的目标插件地址,其中,所述目标插件地址位于与终端设备通信的第一服务器;
根据所述配置信息,对所述目标插件地址进行检测。
5.根据权利要求1所述的方法,其特征在于,在所述检测预设的插件加载地址之前,所述方法还包括:
获取所述集成开发工具当前加载的目标开发项目;
基于所述目标开发项目,确定对应的目标插件地址;
所述检测预设的插件加载地址,包括:
检测所述目标插件地址。
6.根据权利要求1所述的方法,其特征在于,在所述检测预设的插件加载地址之前,所述方法还包括:
生成目标动态插件;
将所述目标动态插件存储至所述插件加载位置。
7.根据权利要求6所述的方法,其特征在于,所述将所述目标动态插件存储至所述插件加载位置,包括:
获取开发项目信息,所述开发项目信息表征通过所述集成开发工具建立的开发项目;
将所述目标动态插件存储至与所述开发项目信息对应的插件加载位置。
8.根据权利要求6所述的方法,其特征在于,所述目标动态插件为功能测试插件,所述生成动态插件,包括:
检测到目标代码文件更新时,基于所述目标代码文件的代码结构,生成至少一个对应的目标测试用例文件;
基于所述目标测试用例文件,生成或更新所述目标代码文件对应的功能测试插件,所述功能测试插件用于被触发后,执行所述目标测试用例文件,并输出测试结果。
9.一种基于动态插件的文件处理装置,其特征在于,包括:
检测模块,用于在集成开发工具运行过程中,检测预设的插件加载地址;
显示模块,用于若检测到动态插件,则在所述集成开发工具的界面内,显示所述动态插件对应的插件标识,所述动态插件基于Java归档文件加载;
处理模块,用于响应于针对所述插件标识的触发指令,调用所述动态插件处理目标文件,生成处理结果。
10.一种电子设备,其特征在于,包括:处理器,以及与所述处理器通信连接的存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,以实现如权利要求1至8中任一项所述的基于动态插件的文件处理方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如权利要求1至8任一项所述的基于动态插件的文件处理方法。
12.一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现权利要求1至8中任一项所述的基于动态插件的文件处理方法。
CN202210731415.0A 2022-06-24 2022-06-24 基于动态插件的文件处理方法、装置、设备及存储介质 Pending CN117311838A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210731415.0A CN117311838A (zh) 2022-06-24 2022-06-24 基于动态插件的文件处理方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210731415.0A CN117311838A (zh) 2022-06-24 2022-06-24 基于动态插件的文件处理方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN117311838A true CN117311838A (zh) 2023-12-29

Family

ID=89241375

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210731415.0A Pending CN117311838A (zh) 2022-06-24 2022-06-24 基于动态插件的文件处理方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN117311838A (zh)

Similar Documents

Publication Publication Date Title
CN110489101B (zh) 接口模拟方法、***、介质和电子设备
CN111897740B (zh) 用户界面的测试方法、装置、电子设备及计算机可读介质
CN110489179B (zh) 获取调用栈栈帧函数签名的方法、装置、介质和设备
CN110764941B (zh) 获取调用栈栈帧指令偏移的方法、装置、介质和设备
CN113377366B (zh) 控件编辑方法、装置、设备、可读存储介质及产品
CN110489165B (zh) 获取调用栈栈帧指令偏移的方法、装置、介质和设备
CN113835992B (zh) 内存泄露的处理方法、装置、电子设备及计算机存储介质
CN113377365B (zh) 代码显示方法、装置、设备、计算机可读存储介质及产品
CN111813465B (zh) 一种信息获取方法、装置、介质和设备
CN113806212A (zh) 应用程序异常定位方法、装置以及电子设备
CN111625291B (zh) 数据处理模型自动迭代方法、装置及电子设备
CN110941549B (zh) 一种内存泄漏的检测方法、装置、介质和电子设备
CN110489164B (zh) 一种隐藏断言信息的获取方法、装置、介质和设备
CN110908882A (zh) 一种应用程序的性能分析方法、装置、终端设备及介质
CN114296986B (zh) 内存泄漏定位方法、装置、介质和电子设备
CN111382017A (zh) 故障查询方法、装置,服务器及存储介质
CN112379967B (zh) 模拟器检测方法、装置、设备及介质
CN117667663A (zh) 控件定位路径确定方法、装置、设备、存储介质及产品
CN111258797B (zh) 一种内存泄露的检测方法、装置、介质和电子设备
CN111309323B (zh) 参数初始化方法、装置和电子设备
CN117311838A (zh) 基于动态插件的文件处理方法、装置、设备及存储介质
CN111381813B (zh) 前端页面调试方法、装置、计算机设备和存储介质
CN110727480A (zh) 获取调用栈栈帧指令偏移的方法、装置、介质和设备
CN114398233B (zh) 一种负载异常检测方法、装置、服务器和存储介质
CN116932068A (zh) 基于idea的插件类加载方法、装置及设备

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