CN111124420A - Compiling method, device, electronic equipment and readable storage medium - Google Patents

Compiling method, device, electronic equipment and readable storage medium Download PDF

Info

Publication number
CN111124420A
CN111124420A CN201911319075.5A CN201911319075A CN111124420A CN 111124420 A CN111124420 A CN 111124420A CN 201911319075 A CN201911319075 A CN 201911319075A CN 111124420 A CN111124420 A CN 111124420A
Authority
CN
China
Prior art keywords
plug
program
compiling
result
code
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.)
Granted
Application number
CN201911319075.5A
Other languages
Chinese (zh)
Other versions
CN111124420B (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 Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and 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 Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201911319075.5A priority Critical patent/CN111124420B/en
Publication of CN111124420A publication Critical patent/CN111124420A/en
Application granted granted Critical
Publication of CN111124420B publication Critical patent/CN111124420B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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

Abstract

The application discloses a compiling method, a compiling device, electronic equipment and a readable storage medium, and relates to the technical field of compiling in the field of computers. The specific implementation scheme is as follows: according to the configuration information of the non-plug-in programs and at least one plug-in program, splitting and compiling the object to be compiled in a first compiling project to obtain a resource compiling result of the non-plug-in program, a resource compiling result of each plug-in program, a code compiling result of the non-plug-in program and a code compiling result of each plug-in program, and outputting executable files of the non-plug-in programs and the plug-in programs respectively. The method has the advantages that the complexity of plug-in compiling of the application program with the plug-in requirement is low, and compiling error can be avoided.

Description

Compiling method, device, electronic equipment and readable storage medium
Technical Field
The present disclosure relates to computer technologies, and in particular, to a compiling method and apparatus, an electronic device, and a readable storage medium.
Background
Applications may require multiple compilations during development before release. At the time of compilation, the source code of the application program and the related resources are input into a compilation tool, compiled by the compilation tool, and the application package of the application program is output. Taking an android operating system as an example, the gradle is a compiling tool with wider application. For applications that need to run in the android operating system, the compilation can be done using gradles.
In the prior art, when the gradle compiles the application program, codes and resources of the application program to be compiled are used as a main program and are compiled uniformly, so that a uniform compiling result is obtained.
However, for an application program with a plug-in requirement, the existing compiling method may cause problems of high plug-in splitting complexity, difficulty in obtaining an expected plug-in compiling result, and the like.
Disclosure of Invention
The embodiment of the application provides a compiling method, a compiling device, an electronic device and a readable storage medium, and is used for solving the problems that in the prior art, plug-in splitting complexity is high and an expected plug-in compiling result is difficult to obtain.
In a first aspect, an embodiment of the present application provides a compiling method, including:
the method comprises the steps that an object to be compiled is obtained in a first compiling project, the object to be compiled comprises codes and resources of an application program to be compiled, and the codes and the resources belong to a non-plug-in program and at least one plug-in program of the application program respectively;
processing the object to be compiled in a first compiling engineering according to the configuration information of the non-plug-in program and the at least one plug-in program to obtain a resource compiling result of the non-plug-in program, a resource compiling result of each plug-in program, a code compiling result of the non-plug-in program and a code compiling result of each plug-in program;
and respectively outputting the executable file of the non-plug-in program and the executable file of the plug-in program.
As a possible implementation manner, the separately outputting the executable file of the non-plug-in program and the executable file of the plug-in program includes:
outputting an executable file of the non-plug-in program through the first compiling engineering according to a resource compiling result of the non-plug-in program and a code compiling result of the non-plug-in program;
and outputting the executable file of the plug-in program through a second compiling project according to the resource compiling result of the plug-in program and the code compiling result of the plug-in program.
As a possible implementation manner, the processing the object to be compiled in a first compilation process according to the configuration information of the non-plug-in and the at least one plug-in to obtain a resource compilation result of the non-plug-in, a resource compilation result of each plug-in, a code compilation result of the non-plug-in, and a code compilation result of each plug-in includes:
according to the configuration information of the non-plug-in program and the at least one plug-in program, splitting resources of the object to be compiled to obtain resources of the non-plug-in program and resources of each plug-in program;
compiling the non-plug-in program resources and the plug-in program resources to obtain non-plug-in program resource compiling results and plug-in program resource compiling results;
splitting the compiled code compiling result according to the configuration information of the non-plug-in programs and the at least one plug-in program to obtain the code compiling result of the non-plug-in program and the code compiling result of each plug-in program.
As a possible implementation manner, the compiling the resources of the non-plug-ins and the resources of each plug-in to obtain the resource compiling result of the non-plug-ins and the resource compiling result of each plug-in includes:
compiling and distributing identification to the non-plug-in program resources and the plug-in program resources to obtain non-plug-in program resource compiling results and plug-in program resource compiling results, wherein the identification of the non-plug-in program resource compiling results and the identification of the plug-in program resource compiling results are different pairwise.
As a possible implementation manner, after splitting the compiled code compilation result to obtain the code compilation result of the non-plug-in and the code compilation result of each plug-in, the method further includes:
and simultaneously performing obfuscation processing on the code compiling result of the non-plug-in program and the code compiling result of each plug-in program to obtain the obfuscated code compiling result of the non-plug-in program and the code compiling result of each plug-in program.
As a possible implementation manner, the outputting an executable file of the plug-in program through a second compilation project according to a resource compilation result of the plug-in program and a code compilation result of the plug-in program includes:
and inputting the resource compiling result of the plug-in program and the code compiling result of the plug-in program into the second compiling project, so as to carry out replacement processing on the resource compiling result of the plug-in program through the second compiling project, and outputting an executable file of the plug-in program according to the resource compiling result of the plug-in program and the code compiling result of the plug-in program after the replacement processing.
As a possible implementation manner, the splitting the compiled code compilation result according to the configuration information of the non-plug-in and the at least one plug-in to obtain the code compilation result of the non-plug-in and the code compilation result of each plug-in includes:
splitting a compiled code compiling result according to a target configuration file to obtain a code compiling result of the non-plug-in program and a code compiling result of each plug-in program;
wherein the target configuration file is used to identify the configuration information.
As a possible implementation manner, the splitting resources of the object to be compiled according to the configuration information of the non-plug-in and the at least one plug-in to obtain the resources of the non-plug-in and the resources of each plug-in includes:
according to the target configuration file, carrying out resource splitting on the object to be compiled to obtain the resources of the non-plug-in programs and the resources of each plug-in program;
wherein the target configuration file is used to identify the configuration information.
In a second aspect, an embodiment of the present application provides a compiling apparatus, including:
the system comprises an acquisition module, a compiling module and a compiling module, wherein the acquisition module is used for acquiring an object to be compiled in a first compiling project, the object to be compiled comprises a code and a resource of an application program to be compiled, and the code and the resource belong to a non-plug-in program and at least one plug-in program of the application program respectively;
the processing module is used for processing the object to be compiled in a first compiling engineering according to the configuration information of the non-plug-in program and the at least one plug-in program to obtain a resource compiling result of the non-plug-in program, a resource compiling result of each plug-in program, a code compiling result of the non-plug-in program and a code compiling result of each plug-in program;
and the output module is used for respectively outputting the executable file of the non-plug-in program and the executable file of the plug-in program.
As a possible implementation manner, the output module is specifically configured to:
the executable file of the non-plug-in program is output through the first compiling engineering according to the resource compiling result of the non-plug-in program and the code compiling result of the non-plug-in program; and the number of the first and second groups,
and outputting the executable file of the plug-in program through a second compiling project according to the resource compiling result of the plug-in program and the code compiling result of the plug-in program.
As a possible implementation manner, the processing module is specifically configured to:
according to the configuration information of the non-plug-in program and the at least one plug-in program, splitting resources of the object to be compiled to obtain resources of the non-plug-in program and resources of each plug-in program; and the number of the first and second groups,
compiling the non-plug-in program resources and the plug-in program resources to obtain non-plug-in program resource compiling results and plug-in program resource compiling results; and the number of the first and second groups,
splitting the compiled code compiling result according to the configuration information of the non-plug-in programs and the at least one plug-in program to obtain the code compiling result of the non-plug-in program and the code compiling result of each plug-in program.
As a possible implementation manner, the processing module is specifically configured to:
compiling and distributing identification to the non-plug-in program resources and the plug-in program resources to obtain non-plug-in program resource compiling results and plug-in program resource compiling results, wherein the identification of the non-plug-in program resource compiling results and the identification of the plug-in program resource compiling results are different pairwise.
As a possible implementation, the processing module is further configured to:
and simultaneously performing obfuscation processing on the code compiling result of the non-plug-in program and the code compiling result of each plug-in program to obtain the obfuscated code compiling result of the non-plug-in program and the code compiling result of each plug-in program.
As a possible implementation manner, the output module is specifically configured to:
and inputting the resource compiling result of the plug-in program and the code compiling result of the plug-in program into the second compiling project, so as to carry out replacement processing on the resource compiling result of the plug-in program through the second compiling project, and outputting an executable file of the plug-in program according to the resource compiling result of the plug-in program and the code compiling result of the plug-in program after the replacement processing.
As a possible implementation manner, the processing module is specifically configured to:
splitting a compiled code compiling result according to a target configuration file to obtain a code compiling result of the non-plug-in program and a code compiling result of each plug-in program;
wherein the target configuration file is used to identify the configuration information.
As a possible implementation manner, the processing module is specifically configured to:
according to the target configuration file, carrying out resource splitting on the object to be compiled to obtain the resources of the non-plug-in programs and the resources of each plug-in program;
wherein the target configuration file is used to identify the configuration information.
In a third aspect, an embodiment of the present application provides an electronic device, including:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein the content of the first and second substances,
the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method of the first aspect.
In a fourth aspect, embodiments of the present application provide a non-transitory computer-readable storage medium having stored thereon computer instructions for causing a computer to perform the method of the first aspect.
One embodiment in the above application has the following advantages or benefits:
the method comprises the steps of performing overall compilation on plug-in codes and non-plug-in codes of application programs based on one-time unified construction in a first compilation project, so that errors that dependence information cannot be found can be avoided, splitting resources and codes of all plug-ins in the overall compilation process of the first compilation project based on configuration information of the plug-ins and the non-plug-ins, and outputting executable files of the non-plug-ins and the plug-ins respectively. In the process, the source program of the application program does not need to be modified, the corresponding module of the plug-in program does not need to be automatically split, and the executable files of the plug-in program and the non plug-in program can be obtained only based on the configuration information, so that the complexity of plug-in compiling of the application program with the plug-in requirement is low, and the compiling and reporting errors can be avoided.
Other effects of the above-described alternative will be described below with reference to specific embodiments.
Drawings
The drawings are included to provide a better understanding of the present solution and are not intended to limit the present application. Wherein:
FIG. 1 is an example of a dependency of a source program of an application;
fig. 2 is a flowchart illustrating a compiling method according to an embodiment of the present application;
fig. 3 is a flowchart illustrating a compiling method according to an embodiment of the present application;
FIG. 4 is a schematic of the compilation process of a gradle;
fig. 5 is a block diagram of a compiling apparatus according to an embodiment of the present application;
fig. 6 is a block diagram of an electronic device of a compiling method according to an embodiment of the present application.
Detailed Description
The following description of the exemplary embodiments of the present application, taken in conjunction with the accompanying drawings, includes various details of the embodiments of the application for the understanding of the same, which are to be considered exemplary only. Accordingly, those of ordinary skill in the art will recognize that various changes and modifications of the embodiments described herein can be made without departing from the scope and spirit of the present application. Also, descriptions of well-known functions and constructions are omitted in the following description for clarity and conciseness.
In the prior art, when the gradle compiles the application program, codes and resources of the application program to be compiled are used as a main program and are compiled uniformly, so that a uniform compiling result is obtained. For some application programs with complex functions, a plurality of development teams may jointly develop and complete the application programs, each team is responsible for developing modules of a part of plug-ins, a plurality of places which need to be correlated and dependent may exist among the modules, and meanwhile, each team needs to compile the modules which are responsible for the team to obtain various plug-ins. Fig. 1 is an example of a dependency relationship of a source program of an application program, and as shown in fig. 1, the application program includes a base module and n service modules, where each service module depends on the base module. Meanwhile, a dependency relationship may exist between the service modules. If the gradle compiling method is used, for each plug-in, a module corresponding to the plug-in and a module with a dependency relationship need to be split into plug-in projects for compiling, and due to the complex dependency relationship among the modules, the splitting complexity is very high, and a problem that an expected plug-in compiling result is difficult to obtain due to the fact that the dependent module cannot be found in the compiling process and is reported by mistake may occur.
Based on the above problems, the embodiment of the application provides a compiling method, which is used for integrally compiling an application program based on one-time unified construction, and integrally compiling plug-in codes and non-plug-in codes, so that the error that dependent information cannot be found can be avoided, and furthermore, the resources and codes of all plug-ins are split in the integral compiling process, so that different plug-ins are obtained, and therefore the complexity of plug-in compiling of the application program with plug-in requirements is low, and compiling and error reporting are avoided.
It should be understood that the application to be compiled in the embodiments of the present application refers to a source program of an application that is not compiled.
Fig. 2 is a flowchart of a compiling method according to an embodiment of the present application, where an execution subject of the method is an electronic device capable of installing and running a compiling tool. As shown in fig. 2, the method includes:
s201, an object to be compiled is obtained in a first compiling project, the object to be compiled comprises codes and resources of an application program to be compiled, and the codes and the resources are respectively attributed to a non-plug-in program and at least one plug-in program of the application program.
It should be noted that the method in the embodiment of the present application may be applied to an existing gradle compiler to improve the gradle, and the processing procedure in the embodiment of the present application is added thereto, and the following embodiments of the present application are also described with an example of an improvement on the gradle. However, the embodiments of the present application are not limited thereto, and may be applied to other compiling tools as well.
For the gradle, when the gradle is needed to be used for compiling, a compiling project needs to be newly created, and a source program to be compiled is input into the compiling project and compiling is started. In this embodiment of the present application, the first compilation process may be referred to as a main process for compiling an application, where an input of the main process is a complete source program of the application to be compiled, and the complete source program includes resources and codes. The non-plug-ins and plug-ins of the application correspond to a portion of the resources and code therein, respectively.
Alternatively, the non-plug-in program of the application program may refer to a main program or a basic program of the application program.
It should be understood that based on the foregoing associations and dependencies, it is possible for a resource, function code, etc. in a source program to belong to multiple programs simultaneously. For example, a function is both code for a non-plug-in and code for a plug-in.
Optionally, the resource may refer to a resource that needs to be loaded when the application runs, for example, a picture, an interface element, and the like that need to be loaded.
In a specific implementation process, the first compiling project is created in the gradle, and the complete source program of the application program to be compiled is input into the first compiling project, so that the object to be compiled can be obtained.
S202, processing the object to be compiled in a first compiling engineering according to the configuration information of the non-plug-in program and the at least one plug-in program to obtain a resource compiling result of the non-plug-in program, a resource compiling result of each plug-in program, a code compiling result of the non-plug-in program and a code compiling result of each plug-in program.
Wherein the processing comprises: and (5) splitting and compiling. The configuration information is used for identifying the corresponding relation between the non-plug-in program and the code and the resource and the corresponding relation between the plug-in program and the code and the resource.
Taking the dependency relationship of the source program shown in fig. 1 as an example, the source program of the application program includes a base module and a plurality of service modules, and each module includes resources and codes. In one example, the configuration information may be marked as: the basic module + the service module 1 is a non-plug-in program, and the basic module + the module 2+ the module 3 is a plug-in program 1. As can be seen from this example, the plug-in 1 corresponds to the basic module, the business module 2 and the business module 3, i.e. the codes and resources in these modules belong to the plug-in 1, so that at the time of compiling, the result of compiling the codes and resources of these modules is the result of compiling the plug-in 1. In addition, as can be seen from the above example, the basic module belongs to both the plug-in 1 and the non-plug-in, and therefore, the basic module needs to be used for compiling both the plug-in 1 and the non-plug-in.
The configuration information may be pre-recorded by the developer of the application before compiling and stored in a preset directory. When the first compiling engineering is executed to the step, the configuration information is read from the preset directory, and the object to be compiled is split and compiled based on the configuration information. The specific process will be described in detail in the following examples.
And S203, respectively outputting the executable file of the non-plug-in program and the executable file of the plug-in program.
After the above-mentioned resource compiling result of the non-plug-in program, resource compiling result of each plug-in program, code compiling result of the non-plug-in program, and code compiling result of each plug-in program are obtained, the executable file of the non-plug-in program and the executable file of each plug-in program can be respectively output based on these information.
Wherein the executable files are executable on the terminal device to implement the functionality of the respective program.
In this embodiment, the plug-in codes and the non-plug-in codes of the application programs are integrally compiled based on one-time unified construction in the first compilation project, so that an error that dependency information cannot be found can be avoided, and based on configuration information of the plug-in programs and the non-plug-in programs, resources and codes of the plug-ins are split in the integral compilation process of the first compilation project, and executable files of the non-plug-in programs and the plug-in programs are respectively output. In the process, the source program of the application program does not need to be modified, the corresponding module of the plug-in program does not need to be automatically split, and the executable files of the plug-in program and the non plug-in program can be obtained only based on the configuration information, so that the complexity of plug-in compiling of the application program with the plug-in requirement is low, and the compiling and reporting errors can be avoided.
As an alternative embodiment, when the executable file of the non-plug-in program and the executable file of the plug-in program are output in step S203, the executable file of the non-plug-in program may be output through the first compiling process according to a resource compiling result of the non-plug-in program and a code compiling result of the non-plug-in program, and the executable file of the plug-in program may be output through the second compiling process according to a resource compiling result of the plug-in program and a code compiling result of the plug-in program.
It should be noted that the execution order of outputting the two executable files is not sequential.
After the processing in step S202, the compiling results of the codes and resources of the non-plug-in and the plug-in are already split, and on this basis, the first compiling engineering only performs the subsequent compiling processing on the resource compiling results and the code compiling results of the non-plug-in resources, for example, compiles the dex file obtained by the compiling into an apk file, thereby obtaining the compiling results of the non-plug-in resources.
Alternatively, the second compiling project may be another project different from the first compiling project. Each plug-in may correspond to one second compilation project, and thus, if there are a plurality of plug-ins, there may be a plurality of second compilation projects.
Optionally, after the code compiling result and the resource compiling result of the plug-in are obtained in step S202, the code compiling result and the resource compiling result of the plug-in may be respectively stored in the directory corresponding to the plug-in. Furthermore, in this step, a second compilation project corresponding to the plug-in program may be automatically created, and the code compilation result and the resource compilation result may be read from the directory corresponding to the plug-in program, and these two results may be used as the input of the second compilation project and subjected to subsequent compilation processing, so as to obtain the executable file of the plug-in program.
As described in the foregoing step S202, the processing performed on the object to be compiled includes splitting and compiling. An alternative process of this process is described below.
Fig. 3 is a flowchart of a compiling method provided in the embodiment of the present application, and it should be understood that steps S301 to S303 described below may all be performed in the first compiling engineering. As shown in fig. 3, an alternative processing manner of the step S202 includes:
s301, according to the configuration information of the non-plug-in program and the at least one plug-in program, splitting resources of the object to be compiled to obtain the resources of the non-plug-in program and the resources of each plug-in program.
The configuration information identifies the corresponding relationship between the non-plug-in program and the code and the resource, and the corresponding relationship between the plug-in program and the code and the resource, so that which codes and resources belong to which plug-in program or non-plug-in program can be known through the configuration information. Further, when splitting resources based on the configuration information, resources belonging to one plug-in may be specifically packaged as one unit, and resources belonging to non-plug-ins may be packaged as one unit.
As an optional manner, when compiling the resources of the non-plug-ins and the resources of each plug-in, compiling and allocating identifiers to the resources of the non-plug-ins and the resources of each plug-in a first compiling engineering to obtain a resource compiling result of the non-plug-ins and a resource compiling result of each plug-in, where the identifier of the resource compiling result of the non-plug-ins and the identifier of the resource compiling result of each plug-in are different pairwise.
After the processing of the allocation identifier, each resource compiling result has a unique identifier to distinguish the compiling result from other resource compiling results, so that the identifier of each resource compiling result is ensured not to have any conflict, and further, errors in the subsequent compiling process are avoided.
S302, compiling the resources of the non-plug-ins and the resources of each plug-in to obtain resource compiling results of the non-plug-ins and resource compiling results of each plug-in.
After the resources of the non-plug-ins and the plug-ins are respectively split to form respective units, resource compilation may be performed on each unit in a first compilation process.
After the resource compilation is completed, the resource compilation result of each plug-in program can be saved in the corresponding directory of each plug-in program, and only the resource compilation result of non-plug-in programs is reserved in the first compilation project.
And S303, splitting a compiled code compiling result according to the configuration information of the non-plug-in program and the at least one plug-in program to obtain a code compiling result of the non-plug-in program and a code compiling result of each plug-in program.
This step is executed after the code of the object to be compiled is compiled.
Optionally, the code compiling of the object to be compiled refers to uniformly compiling the complete code of the application program, and by means of the uniform compiling, the problem that the dependent code cannot be found is solved. Furthermore, after the complete code compilation is completed, the compiled code can be split according to the configuration information. Specifically, it can be known which codes belong to which plug-in or non-plug-in through the configuration information, and therefore, the code compiling result belonging to one plug-in can be packed into one unit, and the code compiling result belonging to the non-plug-in can be packed into one unit.
After the code compiling results of the non-plug-ins and the plug-ins are obtained, the code compiling results of the plug-ins can be stored in the corresponding directories of the plug-ins, and only the code compiling results of the non-plug-ins are reserved in the first compiling engineering.
As an optional mode, after the compiled code compiling result is split, obfuscating may be performed on the code compiling result of the non-plug-in program and the code compiling result of each plug-in program at the same time, so as to obtain the obfuscated code compiling result of the non-plug-in program and the code compiling result of each plug-in program.
The above-mentioned simultaneous obfuscation processing refers to performing obfuscation processing on the non-plug-in code compiling result and the plug-in code compiling result of each plug-in uniformly. By simultaneously performing the obfuscation processing, it can be ensured that no obfuscation conflict exists between the non-plug-in and each plug-in, and further the compiling result of the application program is ensured to be accurate.
The following describes an improved application process of the gradle in the above steps S301 to S303 based on the compilation process of the gradle.
FIG. 4 is a schematic of the compilation process of a gradle, which, as shown in FIG. 4, includes the following task steps: pre-build (pre build), prepare release dependencies (preparereleasedependences), merge release resources (mergerreleaseresources), process release display (processresemanestives), generate release resources (generterreleaseresources), java pre-compiled release (java precomplexileelease), java compiled release java with java (completerreleasejava), compiled release resources (completerreleaseresources), release conversion process (transformlasesandsandresucreutwithrowardrelease), and packed release (pagereleasereleservestwithdresource).
The electronic device may monitor the above tasks of the first compilation project, and when it is monitored that the first compilation project has executed the tasks described below, add the processing procedure of the embodiment of the present application to the original processing of the gradle. With continued reference to FIG. 4, the details are as follows:
when it is monitored that the mergerreleaseresources task is started to be executed, the process of the step S301 is added on top of the original processing of the gradle, that is, the resource splitting is performed. And taking the non-plug-in program resources as the resources of the first compiling project. In addition, certain resources can be uniformly screened and preprocessed in the step.
When it is monitored that the generatereleaseresource task is started to be executed, the process of the step S302 is added on the basis of compiling the resources belonging to the first compilation project in the primitive process of the gradle, and the operation of compiling the resources of each plug-in project is added. In addition, after the compiling is finished, the resource compiling result of each plug-in project is stored in the appointed directory, and only the resource compiling result of the non-plug-in program is reserved in the first compiling project.
When the situation that the compereasejavawithjavac task starts to be executed is monitored, the compereasejavawithjavac task uniformly compiles the complete codes of the application program. Any modification and movement to the source code file before compilation can be performed in this task to achieve more precise control and modification of the compilation process.
When it is monitored that the execution of the transformclass and resource within the program for release task has started, the processing procedure of step S301 is added to the original processing of the gradle, and the splitting of the code compiling result of each plug-in is added.
Specifically, the compliereleasejavawithjavac task can compile the code into a plurality of jar files, split the jar files according to the configuration information in the transformlasesandsresourceswitrowardforrelease task, and synthesize jar of each plug-in into one jar file. In addition, after the splitting is finished, the resource compiling result of each plug-in project is stored in the appointed directory, and only the resource compiling result of the non-plug-in program is reserved in the first compiling project.
After the above processing is added, only the non-plug-in resources and the code compiling result are reserved in the first compiling engineering of the gradle, and the packageRelease task is continuously executed, so that the non-plug-in executable file, such as an apk file, can be obtained.
And for the resource compiling result and the code compiling result of the split plug-in program, the resource compiling result and the code compiling result are already stored in a specified directory, and after the second compiling project is created, the results are input into the compiling project. Optionally, the execution process of the second compilation project is executed according to the task steps shown in fig. 4.
As an alternative implementation manner, the electronic device may also perform task monitoring on the second compilation project. And when monitoring that the mergeReleaseResources task is started to be executed, replacing the resource compiling result of the plug-in program, and outputting an executable file of the plug-in program according to the resource compiling result after replacing and the code compiling result of the plug-in program. The replacing process may be replacing the original initial value in the second compiling process with the resource compiling result. Through the replacement operation, the second compiling engineering can acquire correct resource information in the subsequent compiling process, and the accuracy of the compiling result is further ensured.
As an alternative implementation, the configuration information of the foregoing embodiment may be represented in the form of a target configuration file.
Correspondingly, in step S303, the compiled code compiling result may be split according to the target configuration file, so as to obtain a non-plug-in code compiling result and a code compiling result of each plug-in.
Correspondingly, in step S301, the resource of the object to be compiled may be split according to the target configuration file, so as to obtain the resource of the non-plug-in and the resource of each plug-in.
For example, the target configuration file may be an xml file.
Fig. 5 is a block diagram of a compiling apparatus according to an embodiment of the present application, and as shown in fig. 5, the apparatus includes:
an obtaining module 501, configured to obtain an object to be compiled in a first compilation process, where the object to be compiled includes a code and a resource of an application program to be compiled, and the code and the resource are respectively attributed to a non-plug-in program and at least one plug-in program of the application program.
A processing module 502, configured to process the object to be compiled in a first compilation process according to the configuration information of the non-plug-in and the at least one plug-in, so as to obtain a resource compilation result of the non-plug-in, a resource compilation result of each plug-in, a code compilation result of the non-plug-in, and a code compilation result of each plug-in.
An output module 503, configured to output the executable file of the non-plug-in program and the executable file of the plug-in program respectively.
As an optional implementation manner, the output module 503 is specifically configured to:
outputting an executable file of the non-plug-in program through the first compiling engineering according to a resource compiling result of the non-plug-in program and a code compiling result of the non-plug-in program; and outputting the executable file of the plug-in program through a second compiling project according to the resource compiling result of the plug-in program and the code compiling result of the plug-in program.
As an optional implementation manner, the processing module 502 is specifically configured to:
according to the configuration information of the non-plug-in program and the at least one plug-in program, splitting resources of the object to be compiled to obtain resources of the non-plug-in program and resources of each plug-in program; compiling the non-plug-in program resources and the plug-in program resources to obtain non-plug-in program resource compiling results and plug-in program resource compiling results; and splitting the compiled code compiling result according to the configuration information of the non-plug-in program and the at least one plug-in program to obtain the code compiling result of the non-plug-in program and the code compiling result of each plug-in program.
As an optional implementation manner, the processing module 502 is specifically configured to:
compiling and distributing identification to the non-plug-in program resources and the plug-in program resources to obtain non-plug-in program resource compiling results and plug-in program resource compiling results, wherein the identification of the non-plug-in program resource compiling results and the identification of the plug-in program resource compiling results are different pairwise.
As an optional implementation, the processing module 502 is further configured to:
and simultaneously performing obfuscation processing on the code compiling result of the non-plug-in program and the code compiling result of each plug-in program to obtain the obfuscated code compiling result of the non-plug-in program and the code compiling result of each plug-in program.
As an optional implementation manner, the output module 503 is specifically configured to:
and inputting the resource compiling result of the plug-in program and the code compiling result of the plug-in program into the second compiling project, so as to carry out replacement processing on the resource compiling result of the plug-in program through the second compiling project, and outputting an executable file of the plug-in program according to the resource compiling result of the plug-in program and the code compiling result of the plug-in program after the replacement processing.
As an optional implementation manner, the processing module 502 is specifically configured to:
and splitting the compiled code compiling result according to the target configuration file to obtain the code compiling result of the non-plug-in program and the code compiling result of each plug-in program.
Wherein the target configuration file is used to identify the configuration information.
As an optional implementation manner, the processing module 502 is specifically configured to:
and according to the target configuration file, carrying out resource splitting on the object to be compiled to obtain the resources of the non-plug-in programs and the resources of each plug-in program.
Wherein the target configuration file is used to identify the configuration information.
The compiling device provided in the embodiment of the present application may execute the method steps in the above method embodiments, and the implementation principle and the technical effect are similar, which are not described herein again.
It should be noted that the division of the modules of the above apparatus is only a logical division, and the actual implementation may be wholly or partially integrated into one physical entity, or may be physically separated. And these modules can be realized in the form of software called by processing element; or may be implemented entirely in hardware; and part of the modules can be realized in the form of calling software by the processing element, and part of the modules can be realized in the form of hardware. For example, the determining module may be a processing element separately set up, or may be implemented by being integrated in a chip of the apparatus, or may be stored in a memory of the apparatus in the form of program code, and the function of the determining module is called and executed by a processing element of the apparatus. Other modules are implemented similarly. In addition, all or part of the modules can be integrated together or can be independently realized. The processing element described herein may be an integrated circuit having signal processing capabilities. In implementation, each step of the above method or each module above may be implemented by an integrated logic circuit of hardware in a processor element or an instruction in the form of software.
For example, the above modules may be one or more integrated circuits configured to implement the above methods, such as: one or more Application Specific Integrated Circuits (ASICs), or one or more microprocessors (DSPs), or one or more Field Programmable Gate Arrays (FPGAs), among others. For another example, when some of the above modules are implemented in the form of a processing element scheduler code, the processing element may be a general-purpose processor, such as a Central Processing Unit (CPU) or other processor that can call program code. As another example, these modules may be integrated together, implemented in the form of a system-on-a-chip (SOC).
In the above embodiments, the implementation may be wholly or partially realized by software, hardware, firmware, or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When loaded and executed on a computer, cause the processes or functions described in accordance with the embodiments of the invention to occur, in whole or in part. The computer may be a general purpose computer, a special purpose computer, a network of computers, or other programmable device. The computer instructions may be stored in a computer readable storage medium or transmitted from one computer readable storage medium to another, for example, from one website site, computer, server, or data center to another website site, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, Digital Subscriber Line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device, such as a server, a data center, etc., that incorporates one or more of the available media. The usable medium may be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., Solid State Disk (SSD)), among others.
According to an embodiment of the present application, an electronic device and a readable storage medium are also provided.
Fig. 6 is a block diagram of an electronic device according to an embodiment of the present application. Electronic devices are intended to represent various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other appropriate computers. The electronic device may also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions, are meant to be examples only, and are not meant to limit implementations of the present application that are described and/or claimed herein.
As shown in fig. 6, the electronic apparatus includes: one or more processors 601, memory 602, and interfaces for connecting the various components, including a high-speed interface and a low-speed interface. The various components are interconnected using different buses and may be mounted on a common motherboard or in other manners as desired. The processor may process instructions for execution within the electronic device, including instructions stored in or on the memory to display graphical information of a GUI on an external input/output apparatus (such as a display device coupled to the interface). In other embodiments, multiple processors and/or multiple buses may be used, along with multiple memories and multiple memories, as desired. Also, multiple electronic devices may be connected, with each device providing portions of the necessary operations (e.g., as a server array, a group of blade servers, or a multi-processor system). In fig. 6, one processor 601 is taken as an example.
The memory 602 is a non-transitory computer readable storage medium as provided herein. Wherein the memory stores instructions executable by at least one processor to cause the at least one processor to perform the compiling method provided by the present application. The non-transitory computer-readable storage medium of the present application stores computer instructions for causing a computer to execute the compiling method provided by the present application.
The memory 602, which is a non-transitory computer readable storage medium, may be used to store non-transitory software programs, non-transitory computer executable programs, and modules, such as program instructions/modules (for example, the obtaining module 501, the processing module 502, and the output module 503 shown in fig. 5) corresponding to the compiling method in the embodiment of the present application. The processor 601 executes various functional applications of the server and data processing, i.e., implements the compiling method in the above method embodiments, by running non-transitory software programs, instructions, and modules stored in the memory 602.
The memory 602 may include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application program required for at least one function; the storage data area may store data created from use of the electronic device of the compiling process, and the like. Further, the memory 602 may include high speed random access memory, and may also include non-transitory memory, such as at least one magnetic disk storage device, flash memory device, or other non-transitory solid state storage device. In some embodiments, the memory 602 may optionally include memory located remotely from the processor 601, which may be connected to the compiled electronic device via a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
The electronic device of the compiling method may further include: an input device 603 and an output device 604. The processor 601, the memory 602, the input device 603 and the output device 604 may be connected by a bus or other means, and fig. 6 illustrates the connection by a bus as an example.
The input device 603 may receive input numeric or character information and generate key signal inputs related to user settings and function control of the compiled electronic device, such as a touch screen, a keypad, a mouse, a track pad, a touch pad, a pointing stick, one or more mouse buttons, a track ball, a joystick, or other input device. The output devices 604 may include a display device, auxiliary lighting devices (e.g., LEDs), and tactile feedback devices (e.g., vibrating motors), among others. The display device may include, but is not limited to, a Liquid Crystal Display (LCD), a Light Emitting Diode (LED) display, and a plasma display. In some implementations, the display device can be a touch screen.
Various implementations of the systems and techniques described here can be realized in digital electronic circuitry, integrated circuitry, application specific ASICs (application specific integrated circuits), computer hardware, firmware, software, and/or combinations thereof. These various embodiments may include: implemented in one or more computer programs that are executable and/or interpretable on a programmable system including at least one programmable processor, which may be special or general purpose, receiving data and instructions from, and transmitting data and instructions to, a storage system, at least one input device, and at least one output device.
These computer programs (also known as programs, software applications, or code) include machine instructions for a programmable processor, and may be implemented using high-level procedural and/or object-oriented programming languages, and/or assembly/machine languages. As used herein, the terms "machine-readable medium" and "computer-readable medium" refer to any computer program product, apparatus, and/or device (e.g., magnetic discs, optical disks, memory, Programmable Logic Devices (PLDs)) used to provide machine instructions and/or data to a programmable processor, including a machine-readable medium that receives machine instructions as a machine-readable signal. The term "machine-readable signal" refers to any signal used to provide machine instructions and/or data to a programmable processor.
To provide for interaction with a user, the systems and techniques described here can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to a user; and a keyboard and a pointing device (e.g., a mouse or a trackball) by which a user can provide input to the computer. Other kinds of devices may also be used to provide for interaction with a user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form, including acoustic, speech, or tactile input.
The systems and techniques described here can be implemented in a computing system that includes a back-end component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front-end component (e.g., a user computer having a graphical user interface or a web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such back-end, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: local Area Networks (LANs), Wide Area Networks (WANs), and the Internet.
The computer system may include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other.
It should be understood that various forms of the flows shown above may be used, with steps reordered, added, or deleted. For example, the steps described in the present application may be executed in parallel, sequentially, or in different orders, and the present invention is not limited thereto as long as the desired results of the technical solutions disclosed in the present application can be achieved.
The above-described embodiments should not be construed as limiting the scope of the present application. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions may be made in accordance with design requirements and other factors. Any modification, equivalent replacement, and improvement made within the spirit and principle of the present application shall be included in the protection scope of the present application.

Claims (11)

1. A compilation method, comprising:
the method comprises the steps that an object to be compiled is obtained in a first compiling project, the object to be compiled comprises codes and resources of an application program to be compiled, and the codes and the resources belong to a non-plug-in program and at least one plug-in program of the application program respectively;
processing the object to be compiled in a first compiling engineering according to the configuration information of the non-plug-in program and the at least one plug-in program to obtain a resource compiling result of the non-plug-in program, a resource compiling result of each plug-in program, a code compiling result of the non-plug-in program and a code compiling result of each plug-in program;
and respectively outputting the executable file of the non-plug-in program and the executable file of the plug-in program.
2. The method of claim 1, wherein the separately outputting the non-plug-in executable file and the plug-in executable file comprises:
outputting an executable file of the non-plug-in program through the first compiling engineering according to a resource compiling result of the non-plug-in program and a code compiling result of the non-plug-in program;
and outputting the executable file of the plug-in program through a second compiling project according to the resource compiling result of the plug-in program and the code compiling result of the plug-in program.
3. The method according to claim 1, wherein the processing the object to be compiled in a first compilation process according to the configuration information of the non-plug-in and the at least one plug-in to obtain a resource compilation result of the non-plug-in, a resource compilation result of each plug-in, a code compilation result of the non-plug-in, and a code compilation result of each plug-in comprises:
according to the configuration information, carrying out resource splitting on the object to be compiled to obtain the resources of the non-plug-in programs and the resources of each plug-in program;
compiling the non-plug-in program resources and the plug-in program resources to obtain non-plug-in program resource compiling results and plug-in program resource compiling results;
and splitting the compiled code compiling result according to the configuration information to obtain the code compiling result of the non-plug-in program and the code compiling result of each plug-in program.
4. The method according to claim 3, wherein the compiling the non-plug-in resources and the plug-in resources to obtain the non-plug-in resource compiling result and the plug-in resource compiling result comprises:
compiling and distributing identification to the non-plug-in program resources and the plug-in program resources to obtain non-plug-in program resource compiling results and plug-in program resource compiling results, wherein the identification of the non-plug-in program resource compiling results and the identification of the plug-in program resource compiling results are different pairwise.
5. The method of claim 3, wherein splitting the compiled code compilation result to obtain the non-plug-in code compilation result and the plug-in code compilation result, further comprises:
and simultaneously performing obfuscation processing on the code compiling result of the non-plug-in program and the code compiling result of each plug-in program to obtain the obfuscated code compiling result of the non-plug-in program and the code compiling result of each plug-in program.
6. The method according to claim 2, wherein the outputting the executable file of the plug-in program through a second compilation project according to the resource compilation result of the plug-in program and the code compilation result of the plug-in program comprises:
and inputting the resource compiling result of the plug-in program and the code compiling result of the plug-in program into the second compiling project, so as to carry out replacement processing on the resource compiling result of the plug-in program through the second compiling project, and outputting an executable file of the plug-in program according to the resource compiling result of the plug-in program and the code compiling result of the plug-in program after the replacement processing.
7. The method according to any one of claims 3 to 6, wherein splitting the compiled code compilation result according to the configuration information of the non-plug-in and the at least one plug-in to obtain the code compilation result of the non-plug-in and the code compilation result of each plug-in comprises:
splitting a compiled code compiling result according to a target configuration file to obtain a code compiling result of the non-plug-in program and a code compiling result of each plug-in program;
wherein the target configuration file is used to identify the configuration information.
8. The method according to any one of claims 3 to 6, wherein the splitting the resources of the non-plug-in and the resources of each plug-in by splitting the resources of the object to be compiled according to the configuration information of the non-plug-in and the configuration information of the at least one plug-in comprises:
according to the target configuration file, carrying out resource splitting on the object to be compiled to obtain the resources of the non-plug-in programs and the resources of each plug-in program;
wherein the target configuration file is used to identify the configuration information.
9. A compiling apparatus characterized by comprising:
the system comprises an acquisition module, a compiling module and a compiling module, wherein the acquisition module is used for acquiring an object to be compiled in a first compiling project, the object to be compiled comprises a code and a resource of an application program to be compiled, and the code and the resource belong to a non-plug-in program and at least one plug-in program of the application program respectively;
the processing module is used for processing the object to be compiled in a first compiling engineering according to the configuration information of the non-plug-in program and the at least one plug-in program to obtain a resource compiling result of the non-plug-in program, a resource compiling result of each plug-in program, a code compiling result of the non-plug-in program and a code compiling result of each plug-in program;
and the output module is used for respectively outputting the executable file of the non-plug-in program and the executable file of the plug-in program.
10. An electronic device, comprising:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein the content of the first and second substances,
the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method of any one of claims 1-8.
11. A non-transitory computer readable storage medium having stored thereon computer instructions for causing the computer to perform the method of any one of claims 1-8.
CN201911319075.5A 2019-12-19 2019-12-19 Compiling method, compiling device, electronic equipment and readable storage medium Active CN111124420B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911319075.5A CN111124420B (en) 2019-12-19 2019-12-19 Compiling method, compiling device, electronic equipment and readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911319075.5A CN111124420B (en) 2019-12-19 2019-12-19 Compiling method, compiling device, electronic equipment and readable storage medium

Publications (2)

Publication Number Publication Date
CN111124420A true CN111124420A (en) 2020-05-08
CN111124420B CN111124420B (en) 2023-06-20

Family

ID=70500224

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911319075.5A Active CN111124420B (en) 2019-12-19 2019-12-19 Compiling method, compiling device, electronic equipment and readable storage medium

Country Status (1)

Country Link
CN (1) CN111124420B (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111638884A (en) * 2020-05-19 2020-09-08 贝壳技术有限公司 Method, system, device and storage medium for plug-in engineering compilation
CN111796878A (en) * 2020-06-05 2020-10-20 北京沃东天骏信息技术有限公司 Resource splitting and loading method and device applied to single-page application
CN112148303A (en) * 2020-09-28 2020-12-29 Oppo(重庆)智能科技有限公司 File generation method, device, terminal and storage medium
CN113010180A (en) * 2021-03-12 2021-06-22 山东英信计算机技术有限公司 Firmware generation method, system, device and medium
CN115408047A (en) * 2022-08-11 2022-11-29 北京大氪信息科技有限公司 Version release method and device and electronic equipment

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104090785A (en) * 2014-06-19 2014-10-08 小米科技有限责任公司 Method, device and system for providing application program
CN106201481A (en) * 2016-06-30 2016-12-07 传线网络科技(上海)有限公司 Assembly management method and apparatus in application development system
CN106980504A (en) * 2017-03-28 2017-07-25 腾讯科技(深圳)有限公司 A kind of application development method and its instrument, equipment
CN107817978A (en) * 2017-09-28 2018-03-20 聚好看科技股份有限公司 The generation method and device of a kind of executable file
US20180246837A1 (en) * 2017-02-24 2018-08-30 Dell Products L.P. Systems and methods of management console user interface pluggability
CN108595221A (en) * 2018-04-26 2018-09-28 Oppo广东移动通信有限公司 Plug-in loading method, device, server and the storage medium of PaaS platform
US20180293085A1 (en) * 2016-11-14 2018-10-11 Ping An Technology (Shenzhen) Co., Ltd. Plug-in packaging method, device, terminal and storage media
CN109358841A (en) * 2018-08-15 2019-02-19 中国平安人寿保险股份有限公司 Web application develops Compilation Method, device and storage equipment, computer equipment
CN109857405A (en) * 2019-02-02 2019-06-07 Oppo广东移动通信有限公司 Compilation Method, device, storage medium and the terminal of application program installation kit
CN110308900A (en) * 2019-06-27 2019-10-08 广州华多网络科技有限公司 Generation method, device, computer equipment and the storage medium of page route documents

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104090785A (en) * 2014-06-19 2014-10-08 小米科技有限责任公司 Method, device and system for providing application program
CN106201481A (en) * 2016-06-30 2016-12-07 传线网络科技(上海)有限公司 Assembly management method and apparatus in application development system
US20180293085A1 (en) * 2016-11-14 2018-10-11 Ping An Technology (Shenzhen) Co., Ltd. Plug-in packaging method, device, terminal and storage media
US20180246837A1 (en) * 2017-02-24 2018-08-30 Dell Products L.P. Systems and methods of management console user interface pluggability
CN106980504A (en) * 2017-03-28 2017-07-25 腾讯科技(深圳)有限公司 A kind of application development method and its instrument, equipment
CN107817978A (en) * 2017-09-28 2018-03-20 聚好看科技股份有限公司 The generation method and device of a kind of executable file
CN108595221A (en) * 2018-04-26 2018-09-28 Oppo广东移动通信有限公司 Plug-in loading method, device, server and the storage medium of PaaS platform
CN109358841A (en) * 2018-08-15 2019-02-19 中国平安人寿保险股份有限公司 Web application develops Compilation Method, device and storage equipment, computer equipment
CN109857405A (en) * 2019-02-02 2019-06-07 Oppo广东移动通信有限公司 Compilation Method, device, storage medium and the terminal of application program installation kit
CN110308900A (en) * 2019-06-27 2019-10-08 广州华多网络科技有限公司 Generation method, device, computer equipment and the storage medium of page route documents

Non-Patent Citations (10)

* Cited by examiner, † Cited by third party
Title
JAVA酸不酸: "SpringBoot中使用Maven插件拆分部署项目", 《HTTPS://BLOG.CSDN.NET/QQ_34382367/ARTICLE/DETAILS/90220458》 *
JAVA酸不酸: "SpringBoot中使用Maven插件拆分部署项目", 《HTTPS://BLOG.CSDN.NET/QQ_34382367/ARTICLE/DETAILS/90220458》, 14 May 2019 (2019-05-14), pages 1 - 5 *
JOHANNES MAYER: "Lightweight Plug-In-Based Application Development", 《HTTPS://LINKSPRINGER.53YU.COM/CHAPTER/10.1007/3-540-36557-5_9》 *
JOHANNES MAYER: "Lightweight Plug-In-Based Application Development", 《HTTPS://LINKSPRINGER.53YU.COM/CHAPTER/10.1007/3-540-36557-5_9》, 1 January 2002 (2002-01-01), pages 1 - 3 *
LIJUN WANG: "Design and implementation of web service plug-in on Eclipse platform", 《2010 INTERNATIONAL CONFERENCE ON COMPUTER, MECHATRONICS, CONTROL AND ELECTRONIC ENGINEERING》 *
LIJUN WANG: "Design and implementation of web service plug-in on Eclipse platform", 《2010 INTERNATIONAL CONFERENCE ON COMPUTER, MECHATRONICS, CONTROL AND ELECTRONIC ENGINEERING》, 25 October 2010 (2010-10-25), pages 1 - 4 *
傅晓巍: "基于Java编译器的Maven混淆插件的设计与实现", 《电脑知识与技术》 *
傅晓巍: "基于Java编译器的Maven混淆插件的设计与实现", 《电脑知识与技术》, 31 December 2018 (2018-12-31), pages 1 - 4 *
陈超凡: "基于Docker的妇幼保健信息微服务平台的建立与应用研究", 《中国优秀硕士学位论文全文数据库 (信息科技辑)》 *
陈超凡: "基于Docker的妇幼保健信息微服务平台的建立与应用研究", 《中国优秀硕士学位论文全文数据库 (信息科技辑)》, 15 December 2018 (2018-12-15), pages 138 - 388 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111638884A (en) * 2020-05-19 2020-09-08 贝壳技术有限公司 Method, system, device and storage medium for plug-in engineering compilation
CN111638884B (en) * 2020-05-19 2021-07-23 贝壳找房(北京)科技有限公司 Method, system, device and storage medium for plug-in engineering compilation
CN111796878A (en) * 2020-06-05 2020-10-20 北京沃东天骏信息技术有限公司 Resource splitting and loading method and device applied to single-page application
CN111796878B (en) * 2020-06-05 2024-04-12 北京沃东天骏信息技术有限公司 Resource splitting and loading method and device applied to single-page application
CN112148303A (en) * 2020-09-28 2020-12-29 Oppo(重庆)智能科技有限公司 File generation method, device, terminal and storage medium
CN113010180A (en) * 2021-03-12 2021-06-22 山东英信计算机技术有限公司 Firmware generation method, system, device and medium
CN115408047A (en) * 2022-08-11 2022-11-29 北京大氪信息科技有限公司 Version release method and device and electronic equipment

Also Published As

Publication number Publication date
CN111124420B (en) 2023-06-20

Similar Documents

Publication Publication Date Title
US10203941B1 (en) Cross platform content management and distribution system
CN111124420A (en) Compiling method, device, electronic equipment and readable storage medium
US11663110B2 (en) Analysis to check web API code usage and specification
US20190289057A1 (en) Software version control without affecting a deployed container
CN111666206B (en) Method, device, equipment and storage medium for acquiring influence range of change code
US20240045850A1 (en) Systems and methods for database orientation transformation
US11481200B1 (en) Checking source code validity at time of code update
US20190377662A1 (en) Identifying a source file for use in debugging compiled code
US8938712B2 (en) Cross-platform virtual machine and method
CN111752572B (en) Compiling method, device, equipment and storage medium
CN106557878B (en) Development project management method and device
US9405652B2 (en) Regular expression support in instrumentation languages using kernel-mode executable code
CN116569141A (en) Workflow repair
US8365154B2 (en) Multi-language software development
CN111563253B (en) Intelligent contract operation method, device, equipment and storage medium
US9519566B2 (en) Modeling memory use of applications
US20230259444A1 (en) Setting breakpoints for source code segments enclosed by macros
US11947966B2 (en) Identifying computer instructions enclosed by macros and conflicting macros at build time
CN114174983B (en) Method and system for optimized automatic verification of advanced constructs
CN115033871A (en) Method and device for generating running environment of application program
US11347523B2 (en) Updated shared library reloading without stopping the execution of an application
US20180137039A1 (en) Embedding profile tests into profile driven feedback generated binaries
US11138094B2 (en) Creation of minimal working examples and environments for troubleshooting code issues
CN112612474A (en) Product transplanting method and device, storage medium and electronic equipment
CN111831317A (en) Method and device for acquiring dependency relationship between services, electronic equipment and storage medium

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