CN112748931B - 编译文件管理方法、调用方法、装置及电子设备 - Google Patents

编译文件管理方法、调用方法、装置及电子设备 Download PDF

Info

Publication number
CN112748931B
CN112748931B CN202110079756.XA CN202110079756A CN112748931B CN 112748931 B CN112748931 B CN 112748931B CN 202110079756 A CN202110079756 A CN 202110079756A CN 112748931 B CN112748931 B CN 112748931B
Authority
CN
China
Prior art keywords
file
identification information
compiled
target
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
CN202110079756.XA
Other languages
English (en)
Other versions
CN112748931A (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.)
Guangzhou Huya Technology Co Ltd
Original Assignee
Guangzhou Huya 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 Guangzhou Huya Technology Co Ltd filed Critical Guangzhou Huya Technology Co Ltd
Priority to CN202110079756.XA priority Critical patent/CN112748931B/zh
Publication of CN112748931A publication Critical patent/CN112748931A/zh
Application granted granted Critical
Publication of CN112748931B publication Critical patent/CN112748931B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • 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)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

本申请提出一种编译文件管理方法、调用方法、装置及电子设备,涉及互联网技术领域,在对编译文件进行管理的过程中,利用待保存编译文件对应的编译状态信息,生成该待保存编译文件对应的依赖文件标识信息,并将该依赖文件标识信息保存在缓存;然后,基于待保存编译文件对应的多个依赖文件列表,在该多个依赖文件列表中获取依赖文件标识信息对应的目标依赖文件列表,从而基于该目标依赖文件列表以及依赖文件标识信息,生成编译文件标识信息;并建立编译文件标识信息与待保存编译文件的对应关系后,将编译文件标识信息及待保存编译文件保存至缓存。如此,通过自动将待保存编译文件保存在本地的缓存中,以提高编译文件的维护效率。

Description

编译文件管理方法、调用方法、装置及电子设备
技术领域
本申请涉及互联网技术领域,具体而言,涉及一种编译文件管理方法、调用方法、装置及电子设备。
背景技术
在应用程序的编译过程中,由于编译过程复杂度的增加以及源文件数量的增加,导致编译过程可能需要较长的编译时间周期,因此,可以采用阶段性编译的方案,通过将阶段性编完成的编译文件进行暂时保存,并在下一次编译时基于在先保存的编译文件继续编译,无需再次重新编译,以提高应用程序的编译速度。
然而,一些方案在维护编译文件的过程中,需要人工进行维护,维护效率较低。
发明内容
本申请的目的在于提供一种编译文件管理方法、调用方法、装置及电子设备,能够提高编译文件的维护效率。
为了实现上述目的,本申请采用的技术方案如下:
第一方面,本申请提供一种编译文件管理方法,应用于电子设备,所述方法包括:
根据待保存编译文件的编译状态信息,生成所述待保存编译文件对应的依赖文件标识信息,并将所述依赖文件标识信息保存在缓存;
获取所述依赖文件标识信息在多个依赖文件列表中对应的目标依赖文件列表;其中,每一个所述依赖文件列表均记录有所述待保存编译文件在编译过程中所有所需的依赖文件;
基于所述目标依赖文件列表以及所述依赖文件标识信息,生成编译文件标识信息,并建立所述编译文件标识信息与所述待保存编译文件的对应关系;
将所述编译文件标识信息及所述待保存编译文件保存至缓存。
第二方面,本申请提供一种编译文件调用方法,应用于电子设备,所述电子设备保存有多个编译文件;所述方法包括:
根据接收的编译状态信息,生成目标依赖文件标识信息;
在缓存中查找所述目标依赖文件标识信息对应的目标依赖文件列表;其中,所述目标依赖文件列表记录有对应的编译文件在编译过程中所有所需的依赖文件;
基于所述目标依赖文件列表以及所述目标依赖文件标识信息,生成目标编译文件标识信息;
在缓存中查找所述目标编译文件标识信息对应的目标编译文件。
第三方面,本申请提供一种编译文件管理装置,所述装置包括:
第一处理模块,用于根据待保存编译文件的编译状态信息,生成所述待保存编译文件对应的依赖文件标识信息;
保存模块,用于将所述依赖文件标识信息保存在缓存;
所述第一处理模块还用于,获取所述依赖文件标识信息在多个依赖文件列表中对应的目标依赖文件列表;其中,每一个所述依赖文件列表均记录有所述待保存编译文件在编译过程中所有所需的依赖文件;
所述第一处理模块还用于,基于所述目标依赖文件列表以及所述依赖文件标识信息,生成编译文件标识信息,并建立所述编译文件标识信息与所述待保存编译文件的对应关系;
所述保存模块还用于,将所述编译文件标识信息及所述待保存编译文件保存至缓存。
第四方面,本申请提供一种编译文件调用装置,应用于电子设备,所述电子设备保存有多个编译文件;所述装置包括:
第二处理模块,用于根据接收的编译状态信息,生成目标依赖文件标识信息;
查找模块,用于在缓存中查找所述目标依赖文件标识信息对应的目标依赖文件列表;其中,所述目标依赖文件列表记录有对应的编译文件在编译过程中所有所需的依赖文件;
所述第二处理模块还用于,基于所述目标依赖文件列表以及所述目标依赖文件标识信息,生成目标编译文件标识信息;
所述查找模块还用于,在缓存中查找所述目标编译文件标识信息对应的目标编译文件。
第五方面,本申请提供一种电子设备,所述电子设备包括存储器,用于存储一个或多个程序;处理器;当所述一个或多个程序被所述处理器执行时,实现上述的编译文件管理方法或编译文件调用方法。
第六方面,本申请提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述的编译文件管理方法或编译文件调用方法。
本申请提供的一种编译文件管理方法、调用方法、装置及电子设备,在对编译文件进行管理的过程中,利用待保存编译文件对应的编译状态信息,生成该待保存编译文件对应的依赖文件标识信息,并将该依赖文件标识信息保存在缓存;然后,基于待保存编译文件对应的多个依赖文件列表,在该多个依赖文件列表中获取依赖文件标识信息对应的目标依赖文件列表,从而基于该目标依赖文件列表以及依赖文件标识信息,生成编译文件标识信息;并建立编译文件标识信息与待保存编译文件的对应关系后,将编译文件标识信息及待保存编译文件保存至缓存。如此,通过自动将待保存编译文件保存在本地的缓存中,而无需上传到服务端,不仅节约了将编译文件保存在服务端的过程中的资源开销,也无需用户手动制作保存的文件,提高了编译文件的维护效率。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它相关的附图。
图1出本申请提供的电子设备的一种示意性结构框图。
图2示出本申请提供的编译文件管理方法的一种示例性流程图。
图3示出本申请提供的编译文件调用方法的一种示例性流程图。
图4示出本申请提供的编译文件管理装置的一种示例性结构框图。
图5示出本申请提供的编译文件调用装置的一种示例性结构框图。
图中:100-电子设备;101-存储器;102-处理器;103-通信接口;400-编译文件管理装置;401-第一处理模块;402-保存模块;500-编译文件调用装置;501-第二处理模块;502-查找模块。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请的一些实施例中的附图,对本申请中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请选定的一些实施例。基于本申请中的一部分实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
在例如上述的针对编译文件进行维护的场景中,一些维护方案是将编译过程中产生的编码打包组件进行手动编码,生成一个二进制文件,并将生成的二进制文件上传到服务端;当开发者需要继续编码,则可以从服务端下载该二进制文件,从而避免重新编译。
然而,由于该方案需要依靠服务端负责维护编译的中间文件,其过程不仅受网速的影响较大,还需要占用服务端的资源,并且需要用户手动打包,将编码过程中产生的中间文件编码为二进制文件,导致维护效率较低。
因此,基于上述方案的缺陷,本申请提供的一些可能的实施方式为:在对编译文件进行管理的过程中,利用待保存编译文件对应的编译状态信息,生成该待保存编译文件对应的依赖文件标识信息,并将该依赖文件标识信息保存在缓存;然后,基于待保存编译文件对应的多个依赖文件列表,在该多个依赖文件列表中获取依赖文件标识信息对应的目标依赖文件列表,从而基于该目标依赖文件列表以及依赖文件标识信息,生成编译文件标识信息;并建立编译文件标识信息与待保存编译文件的对应关系后,将编译文件标识信息及待保存编译文件保存至缓存,以提高编译文件的维护效率。
下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
请参阅图1,图1示出本申请提供的电子设备100的一种示意性结构框图,在一些实施例中,电子设备100可以包括存储器101、处理器102和通信接口103,该存储器101、处理器102和通信接口103相互之间直接或间接地电性连接,以实现数据的传输或交互。
存储器101可用于存储软件程序及模块,如本申请提供的编译文件管理装置或者是编译文件调用装置对应的程序指令/模块,处理器102通过执行存储在存储器101内的软件程序及模块,从而执行各种功能应用以及数据处理,进而执行本申请提供的编译文件管理方法或者是编译文件调用方法的步骤。该通信接口103可用于与其他节点设备进行信令或数据的通信。
其中,存储器101可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-OnlyMemory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除可编程只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。
处理器102可以是一种集成电路芯片,具有信号处理能力。该处理器102可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(NetworkProcessor,NP)等;还可以是数字信号处理器(Digital Signal Processing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
可以理解的是,图1所示的结构仅为示意,在本申请一些其他可能的实施方式中,电子设备100还可以包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。图1中所示的各组件可以采用硬件、软件或其组合实现。
下面以图1所示的电子设备100作为示意性执行主体为例,对本申请提供的编译文件管理方法进行示例性说明。
请参阅图2,图2示出本申请提供的编译文件管理方法的一种示例性流程图,在一些实施例中,该编译文件管理方法可以包括以下步骤:
步骤201,根据待保存编译文件的编译状态信息,生成待保存编译文件对应的依赖文件标识信息,并将依赖文件标识信息保存在缓存。
步骤203,获取依赖文件标识信息在多个依赖文件列表中对应的目标依赖文件列表。
步骤205,基于目标依赖文件列表以及依赖文件标识信息,生成编译文件标识信息,并建立编译文件标识信息与待保存编译文件的对应关系。
步骤207,将编译文件标识信息及待保存编译文件保存至缓存。
在一些实施例中,开发人员基于编译过程中产生的中间编译文件,可以向电子设备输入一中间保存指令,使得电子设备可以响应于该中间保存指令,将该中间编译文件作为待保存编译文件进行缓存管理。
其中,需要说明的是,用户在编译过程中,基于编译阶段的不同,可以使用不同的依赖文件,且每一个编译阶段一般可以对应一个依赖文件列表,每一个依赖文件列表中记录了在相应的编译阶段所使用的多个依赖文件。因此,用户在指示电子设备对中间编译文件进行保存的过程中,可以向电子设备输入一编译状态信息,该编译状态信息可以用于指示中间编译文件在编译过程中的状态信息,比如编译参数、源文件内容、依赖文件内容等等。
基于此,电子设备在执行本申请提供的编译文件管理方法的过程中,可以根据待保存编译文件的编译状态信息,生成该待保存编译文件对应的依赖文件标识信息,从而建立该待保存编译文件与该依赖文件标识信息的对应管理,并将该依赖文件标识信息保存在电子设备的缓存中。
接下来,电子设备针对该待保存编译文件所对应的多个依赖文件列表,在该多个依赖文件列表中获取上述的依赖文件标识信息所对应的目标依赖文件列表,从而基于该目标依赖文件列表以及上述的依赖文件标识信息,生成编译文件标识信息,并建立该编译文件标识信息与待保存编译文件的对应关系,从而利用该编译文件标识信息索引待保存编译文件。
然后,电子设备可以将该编译文件标识信息以及待保存编译文件保存在缓存中,而无需上传到服务器进行保存。
其中,为了便于管理,电子设备在保存编译文件标识信息以及待保存编译文件的过程中,可以将编译文件标识信息与待保存编译文件保存在连续的地址,比如保存在相同的文件夹中。
如此,基于本申请提供的上述方案,在对编译文件进行管理的过程中,利用待保存编译文件对应的编译状态信息,生成该待保存编译文件对应的依赖文件标识信息,并将该依赖文件标识信息保存在缓存;然后,基于待保存编译文件对应的多个依赖文件列表,在该多个依赖文件列表中获取依赖文件标识信息对应的目标依赖文件列表,从而基于该目标依赖文件列表以及依赖文件标识信息,生成编译文件标识信息;并建立编译文件标识信息与待保存编译文件的对应关系后,将编译文件标识信息及待保存编译文件保存至缓存。如此,通过自动将待保存编译文件保存在本地的缓存中,而无需上传到服务端,不仅节约了将编译文件保存在服务端的过程中的资源开销,也无需用户手动制作保存的文件,提高了编译文件的维护效率。
其中,在一些可能的实施方式中,用户在输入编译状态信息的过程中,可以使用待保存编译文件的编译参数以及源文件内容作为编译状态信息。
基于此,电子设备在执行步骤201的过程中,可以采用例如MD5(Message-DigestAlgorithm,信息摘要算法)策略,计算编译参数及源文件内容的MD5值,并将计算得到的MD5值作为待保存编译文件对应的依赖文件标识信息。
另外,同样基于MD5策略,电子设备在执行步骤205的过程中,可以计算依赖文件标识信息在缓存中的地址信息、目标依赖文件列表中所有依赖文件的内容的MD5值,并将计算得到的MD5值作为编译文件标识信息。
当然,可以理解的是,本申请提供的上述计算策略仅为示意,在本申请其他一些可能的实施方式中,电子设备还可以采用除MD5之外其他的一些策略计算出依赖文件标识信息和编译文件标识信息,也可以采用其他的一些内容计算出依赖文件标识信息和编译文件标识信息;比如在计算出依赖文件标识信息时,还可以采用不限于编译参数及源文件内容以外的其他信息,比如依赖文件内容等等;又比如,在计算出编译文件标识信息时,还可以采用依赖文件标识信息的内容、目标依赖文件列表中所有依赖文件在缓存中的地址信息等计算出编译文件标识信息,本申请对此不进行限定。
当然,可以理解的是,由于电子设备的缓存空间一般是固定的,电子设备在维护编译文件的过程中,还可以基于设定的阈值对保存的编译文件的数量进行限制,避免缓存空间保存过多的编译文件。
基于此,电子设备在保存多个编译文件时,可以为每一个编译文件对应设置一个时间戳标签,该时间戳标签可以用于指示对应的编译文件的保存时间或者是最后一次被使用的时间。
当电子设备在保存上述的待保存编译文件的过程中,电子设备还可以先遍历缓存内保存的所有编译文件,判断电子设备内保存的编译文件的数量是否达到设定的阈值;当电子设备内保存的编译文件的数量达到该设定的阈值,电子设备则可以将对应的时间戳标签最早的编译文件进行删除,从而避免电子设备的缓存内保存过多的编译文件。
另外,电子设备在利用本申请提供的上述编译文件管理方法维护有多个编译文件后,用户可以基于电子设备所保存的多个编译文件,执行本申请提供的编译文件调用方法,以获取所需的目标编译文件继续编译,而无需重新执行编译过程,以提高应用程序的编译效率。
下面以图1所示的电子设备作为示意性执行主体为例,对本申请提供的编译文件调用方法进行示例性说明。其中,该电子设备可以利用本申请提供的上述编译文件管理方法保存有多个编译文件。
示例性地,·请参阅图3,图3示出本申请提供的编译文件调用方法的一种示例性流程图,在一些实施例中,该编译文件调用方法可以包括以下步骤:
步骤301,根据接收的编译状态信息,生成目标依赖文件标识信息。
步骤303,在缓存中查找目标依赖文件标识信息对应的目标依赖文件列表。
步骤305,基于目标依赖文件列表以及目标依赖文件标识信息,生成目标编译文件标识信息。
步骤307,在缓存中查找目标编译文件标识信息对应的目标编译文件。
在一些实施例中,与本申请提供的上述的编译文件管理方法相应地,用户在调用所需的目标编译文件的过程中,可以向电子设备输入一编译状态信息,电子设备根据接收的该编译状态信息,可以生成一目标依赖文件标识信息。
比如,与上述步骤201的过程相对应,电子设备接收的该编译状态信息可以包括接收的编译参数及接收的源文件内容。电子设备针对接收的编译参数及接收的源文件内容,可以采用例如上述的MD5策略,计算该接收的编译参数及该接收的源文件内容的MD5值,并将计算得到的MD5值作为目标依赖文件标识信息。
接下来,电子设备可以将该目标依赖文件标识信息与缓存中保存的所有依赖文件标识信息进行匹配,若在缓存中命中与该目标依赖文件标识信息相同的依赖文件标识信息,则将该命中的依赖文件标识信息在缓存中对应的依赖文件列表,作为该目标依赖文件标识信息对应的目标依赖文件列表。
当然,可以理解的是,若在缓存中未命中与该目标依赖文件标识信息相同的依赖文件标识信息,则电子设备可以显示预设的命中失败信息,以提醒用户缓存中未保存有接收的编译状态信息所对应的目标依赖文件列表。
然后,电子设备可以基于该目标依赖文件列表以及目标依赖文件标识信息,生成一目标编译文件标识信息。
示例性地,电子设备在执行步骤305的过程中,可以采用上述步骤205相应的实现方式,基于MD5策略,计算目标依赖文件标识信息在缓存中的地址信息、目标依赖文件列表中所有依赖文件的内容的MD5值,从而将计算得到的MD5值作为目标编译文件标识信息。
接下来,电子设备可以基于获得的目标编译文件标识信息,将该目标编译文件标识信息与缓存中保存的所有编译文件标识信息进行匹配,在缓存中查找与该目标编译文件标识信息对应的目标编译文件;其中,若在缓存中命中与该目标编译文件标识信息对应的目标编译文件,则可以将该目标编译文件反馈用户,使得用户可以基于该目标编译文件继续编译;反之,若在缓存中未命中与该目标编译文件标识信息对应的目标编译文件,则电子设备可以显示预设的命中失败信息,以提醒用户缓存中未保存有接收的编译状态信息所对应的目标编译文件。
另外,在一些实施例中,基于与上述使用时间戳对每一个编译文件进行维护的方案,电子设备还可以保存有每一个编译文件对应的时间戳标签。当电子设备执行步骤307在缓存中查找到与目标编译文件标识信息对应的目标编译文件,则电子设备还可以更新该目标编译文件对应的时间戳标签,以避免电子设备在对新获得的编译文件进行维护的过程中,将该目标编译文件删除。
另外,基于与本申请提供的上述编译文件管理方法相同的发明构思,请参阅图4,图4示出本申请提供的编译文件管理装置400的一种示例性结构框图,在一些实施例中,该编译文件管理装置400可以包括第一处理模块401及保存模块402。
第一处理模块401,用于根据待保存编译文件的编译状态信息,生成待保存编译文件对应的依赖文件标识信息;
保存模块402,用于将依赖文件标识信息保存在缓存;
第一处理模块401还用于,获取依赖文件标识信息在多个依赖文件列表中对应的目标依赖文件列表;其中,每一个依赖文件列表均记录有待保存编译文件在编译过程中所有所需的依赖文件;
第一处理模块401还用于,基于目标依赖文件列表以及依赖文件标识信息,生成编译文件标识信息,并建立编译文件标识信息与待保存编译文件的对应关系;
保存模块402还用于,将编译文件标识信息及待保存编译文件保存至缓存。
可选地,在一些可能的实施方式中,编译状态信息包括待保存编译文件的编译参数及源文件内容;
第一处理模块401在根据待保存编译文件的编译状态信息,生成待保存编译文件对应的依赖文件标识信息时,具体用于:
计算编译参数及源文件内容的MD5值,并将计算得到的MD5值作为待保存编译文件对应的依赖文件标识信息。
可选地,在一些可能的实施方式中,第一处理模块401在基于目标依赖文件列表以及依赖文件标识信息,生成编译文件标识信息时,具体用于:
计算依赖文件标识信息在缓存中的地址信息、目标依赖文件列表中所有依赖文件的内容的MD5值,并将计算得到的MD5值作为编译文件标识信息。
可选地,在一些可能的实施方式中,电子设备还保存有除待保存编译文件之外的多个编译文件,每一个编译文件对应有一个时间戳标签;
第一处理模块401还用于,当电子设备内保存的编译文件的数量达到设定的阈值,将对应的时间戳标签最早的编译文件进行删除。
并且,基于与本申请提供的上述编译文件调用方法相同的发明构思,请参阅图5,图5示出本申请提供的编译文件调用装置500的一种示例性结构框图,在一些实施例中,该编译文件调用装置500可以包括第二处理模块501及查找模块502。
第二处理模块501,用于根据接收的编译状态信息,生成目标依赖文件标识信息;
查找模块502,用于在缓存中查找目标依赖文件标识信息对应的目标依赖文件列表;其中,目标依赖文件列表记录有对应的编译文件在编译过程中所有所需的依赖文件;
第二处理模块501还用于,基于目标依赖文件列表以及目标依赖文件标识信息,生成目标编译文件标识信息;
查找模块502还用于,在缓存中查找目标编译文件标识信息对应的目标编译文件。
可选地,在一些可能的实施方式中,编译状态信息包括接收的编译参数及接收的源文件内容;
第二处理模块501在根据接收的编译状态信息,生成目标依赖文件标识信息时,具体用于:
计算接收的编译参数及接收的源文件内容的MD5值,并将计算得到的MD5值作为目标依赖文件标识信息。
可选地,在一些可能的实施方式中,第二处理模块501在基于目标依赖文件列表以及目标依赖文件标识信息,生成目标编译文件标识信息时,具体用于:
计算目标依赖文件标识信息在缓存中的地址信息、目标依赖文件列表中所有依赖文件的内容的MD5值,并将计算得到的MD5值作为目标编译文件标识信息。
可选地,在一些可能的实施方式中,电子设备还保存有每一个编译文件对应的时间戳标签;第二处理模块501还用于,更新目标编译文件对应的时间戳标签。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的一些实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。
也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。
也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请的一些实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请的一些实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本申请的部分实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其它的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。

Claims (12)

1.一种编译文件管理方法,其特征在于,应用于电子设备,所述方法包括:
根据待保存编译文件的编译状态信息,生成所述待保存编译文件对应的依赖文件标识信息,并将所述依赖文件标识信息保存在缓存;
获取所述依赖文件标识信息在多个依赖文件列表中对应的目标依赖文件列表;其中,每一个所述依赖文件列表均记录有所述待保存编译文件在编译过程中所有所需的依赖文件;
基于所述目标依赖文件列表以及所述依赖文件标识信息,生成编译文件标识信息,并建立所述编译文件标识信息与所述待保存编译文件的对应关系;
将所述编译文件标识信息及所述待保存编译文件保存至缓存。
2.如权利要求1所述的方法,其特征在于,所述编译状态信息包括所述待保存编译文件的编译参数及源文件内容;
所述根据待保存编译文件的编译状态信息,生成所述待保存编译文件对应的依赖文件标识信息,包括:
计算所述编译参数及所述源文件内容的信息摘要算法MD5值,并将计算得到的MD5值作为所述待保存编译文件对应的依赖文件标识信息。
3.如权利要求1所述的方法,其特征在于,所述基于所述目标依赖文件列表以及所述依赖文件标识信息,生成编译文件标识信息,包括:
计算所述依赖文件标识信息在所述缓存中的地址信息、所述目标依赖文件列表中所有依赖文件的内容的MD5值,并将计算得到的MD5值作为编译文件标识信息。
4.如权利要求1-3中任一项所述的方法,其特征在于,所述电子设备还保存有除所述待保存编译文件之外的多个编译文件,每一个编译文件对应有一个时间戳标签;
所述方法还包括:
当所述电子设备内保存的编译文件的数量达到设定的阈值,将对应的时间戳标签最早的编译文件进行删除。
5.一种编译文件调用方法,其特征在于,应用于电子设备,所述电子设备保存有多个编译文件;所述方法包括:
根据接收的编译状态信息,生成目标依赖文件标识信息;
在缓存中查找所述目标依赖文件标识信息对应的目标依赖文件列表;其中,所述目标依赖文件列表记录有对应的编译文件在编译过程中所有所需的依赖文件;
基于所述目标依赖文件列表以及所述目标依赖文件标识信息,生成目标编译文件标识信息;
在缓存中查找所述目标编译文件标识信息对应的目标编译文件。
6.如权利要求5所述的方法,其特征在于,所述编译状态信息包括接收的编译参数及接收的源文件内容;
所述根据接收的编译状态信息,生成目标依赖文件标识信息,包括:
计算所述接收的编译参数及所述接收的源文件内容的MD5值,并将计算得到的MD5值作为目标依赖文件标识信息。
7.如权利要求5所述的方法,其特征在于,所述基于所述目标依赖文件列表以及所述目标依赖文件标识信息,生成目标编译文件标识信息,包括:
计算所述目标依赖文件标识信息在所述缓存中的地址信息、所述目标依赖文件列表中所有依赖文件的内容的MD5值,并将计算得到的MD5值作为目标编译文件标识信息。
8.如权利要求5-7中任一项所述的方法,其特征在于,所述电子设备还保存有每一个编译文件对应的时间戳标签;
所述方法还包括:
更新所述目标编译文件对应的时间戳标签。
9.一种编译文件管理装置,其特征在于,所述装置包括:
第一处理模块,用于根据待保存编译文件的编译状态信息,生成所述待保存编译文件对应的依赖文件标识信息;
保存模块,用于将所述依赖文件标识信息保存在缓存;
所述第一处理模块还用于,获取所述依赖文件标识信息在多个依赖文件列表中对应的目标依赖文件列表;其中,每一个所述依赖文件列表均记录有所述待保存编译文件在编译过程中所有所需的依赖文件;
所述第一处理模块还用于,基于所述目标依赖文件列表以及所述依赖文件标识信息,生成编译文件标识信息,并建立所述编译文件标识信息与所述待保存编译文件的对应关系;
所述保存模块还用于,将所述编译文件标识信息及所述待保存编译文件保存至缓存。
10.一种编译文件调用装置,其特征在于,应用于电子设备,所述电子设备保存有多个编译文件;所述装置包括:
第二处理模块,用于根据接收的编译状态信息,生成目标依赖文件标识信息;
查找模块,用于在缓存中查找所述目标依赖文件标识信息对应的目标依赖文件列表;其中,所述目标依赖文件列表记录有对应的编译文件在编译过程中所有所需的依赖文件;
所述第二处理模块还用于,基于所述目标依赖文件列表以及所述目标依赖文件标识信息,生成目标编译文件标识信息;
所述查找模块还用于,在缓存中查找所述目标编译文件标识信息对应的目标编译文件。
11.一种电子设备,其特征在于,包括:
存储器,用于存储一个或多个程序;
处理器;
当所述一个或多个程序被所述处理器执行时,实现如权利要求1-8中任一项所述的方法。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1-8中任一项所述的方法。
CN202110079756.XA 2021-01-21 2021-01-21 编译文件管理方法、调用方法、装置及电子设备 Active CN112748931B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110079756.XA CN112748931B (zh) 2021-01-21 2021-01-21 编译文件管理方法、调用方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110079756.XA CN112748931B (zh) 2021-01-21 2021-01-21 编译文件管理方法、调用方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN112748931A CN112748931A (zh) 2021-05-04
CN112748931B true CN112748931B (zh) 2023-08-04

Family

ID=75652733

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110079756.XA Active CN112748931B (zh) 2021-01-21 2021-01-21 编译文件管理方法、调用方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN112748931B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101697135A (zh) * 2009-10-28 2010-04-21 北京东方网力科技有限公司 一种编译程序的方法及装置
CN111240689A (zh) * 2020-01-13 2020-06-05 广州虎牙科技有限公司 应用程序的构建方法、装置、设备及存储介质

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101697135A (zh) * 2009-10-28 2010-04-21 北京东方网力科技有限公司 一种编译程序的方法及装置
CN111240689A (zh) * 2020-01-13 2020-06-05 广州虎牙科技有限公司 应用程序的构建方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN112748931A (zh) 2021-05-04

Similar Documents

Publication Publication Date Title
US8543543B2 (en) Hash-based file comparison
CN110737658A (zh) 数据分片存储方法、装置、终端及可读存储介质
CN112866111B (zh) 流表管理的方法和装置
CN109032803B (zh) 数据处理方法和装置、客户端
CN113434910A (zh) 一种业务数据上链方法及装置
CN104834660A (zh) 基于区间的模糊数据库搜索
CN110795399A (zh) 一种为应用产生机器id的方法、装置和系统
CN112769706B (zh) 组件化路由方法及系统
CN104320312A (zh) 网络应用安全测试工具及模糊测试用例生成方法和系统
CN109145053B (zh) 数据处理方法和装置、客户端、服务器
CN111581239A (zh) 缓存刷新方法和电子设备
CN112506681B (zh) 参数调用方法、装置、电子设备及存储介质
CN106156050B (zh) 一种数据处理方法及装置
CN111752797B (zh) 终端日志的处理方法、装置、终端及存储介质
CN112748931B (zh) 编译文件管理方法、调用方法、装置及电子设备
CN105159692A (zh) 应用的标识方法、装置及服务器
CN109582347B (zh) 一种获取前端代码的方法及装置
CN105577707B (zh) 一种远程调用方法与设备
CN105988890B (zh) 信息的备份方法及装置
CN110955460A (zh) 一种服务进程启动方法、装置、电子设备和存储介质
CN112583761B (zh) 安全实体的管理方法、装置、计算机设备和存储介质
CN112862245B (zh) 数据交换方法、装置以及电子设备
CN104580429A (zh) 一种加载通讯信息的方法、服务器和云盘客户端
CN112667284A (zh) 微服务维护方法、装置、服务器及存储介质
CN111538651A (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
GR01 Patent grant
GR01 Patent grant