Detailed Description
Exemplary embodiments of the present disclosure are described below in conjunction with the accompanying drawings, which include various details of the embodiments of the present disclosure to facilitate understanding, and should be considered as merely exemplary. Accordingly, one 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 disclosure. Also, descriptions of well-known functions and constructions are omitted in the following description for clarity and conciseness.
Referring to fig. 1, fig. 1 shows a flow diagram 100 of an embodiment of an application compilation method that may be applied to the present disclosure. The compiling method of the application program comprises the following steps:
In response to receiving the compiling request for the application, a target compiling tool is selected from the plurality of compiling tools, step 110.
In this embodiment, an execution body (for example, a terminal device) on which the application program compiling method is run may display a development interface of the application program to a developer through a screen, the developer may fill in development task information of the application program in the development interface, the development task information of the application program may include name information, function information and the like of the application program, and a compiling request of the application program may be generated according to the development task information of the application program. The execution body can receive a compiling request of a developer for the application program, and can extract development task information of the application program in the compiling request to acquire the development task information of the application program.
The execution body is provided with various compiling tools, and the compiling tools can comprise tools for developing and compiling application programs, can comprise Cocoapods, easybox and the like.
The developer may select a certain compiling tool in the development interface, the execution body may receive a selection operation of the developer on the certain compiling tool, determine the compiling tool corresponding to the selection operation as a target compiling tool for compiling the application program, so that the execution body selects the target compiling tool from multiple compiling tools according to the selection operation of the developer, and then compiling tools other than the target compiling tool in the multiple compiling tools are candidate compiling tools.
Or the execution body may store a relationship table in which development task information and a compiling tool are stored correspondingly, and each type of development task information may correspond to one compiling tool. The execution body can perform type analysis on development task information of the application program, determine the type of the development task information submitted by a developer, determine a compiling tool corresponding to the type of the development task information based on a relation table stored by the development task information and the compiling tool, and select the compiling tool from a plurality of compiling tools as a target compiling tool for compiling the application program, wherein compiling tools except the target compiling tool in the plurality of compiling tools are candidate compiling tools.
Step 120, creating a corresponding code configuration file through a target compiling tool based on the open source code library corresponding to the development task information.
In this embodiment, after the execution body determines the target compiling tool for compiling the application program, an acquisition request of the open source code library may be sent to the server according to development task information of the application program, where the acquisition request includes development task information of the application program. After receiving the acquisition request of the execution body, the server may return to the open source code library corresponding to the development task information according to the development task information of the application program in the acquisition request, and may return reference information of the open source code library or code information of the open source code library.
After the execution main body receives the open source code library corresponding to the development task information, the open source code library corresponding to the development task information can be created and compiled through a selected target compiling tool to generate a corresponding code configuration file, and the code configuration file can comprise the open source code library, version information and the like required by an application program. If the target compilation tool is CocoaPods, the code configuration file may be Podfile, and if the target compilation tool is Easybox, the code configuration file may be Boxfile.
Step 130, determining whether the target compiling tool meets the compiling condition based on the preset operation corresponding to the compiling tool.
In this embodiment, after the execution body determines the target compiling tool for compiling the application program, information analysis may be performed on the target compiling tool to determine whether the target compiling tool has performed a preset operation corresponding to the compiling tool, where the preset operation may represent an operation that multiple compiling tools can develop and compile on the same client with respect to the same open source code library and the same component information library, and may include an operation of deleting engineering configuration files corresponding to candidate compiling tools in multiple compiling tools, installing engineering configuration files of multiple compiling tools in the same target engineering catalog, and so on.
The execution main body determines whether the target compiling tool accords with the compiling condition by judging whether the target compiling tool has executed the preset operation corresponding to the finishing compiling tool or not, wherein the compiling condition can represent the condition that the target compiling tool can execute the compiling development of the application program, namely, if the execution main body determines that the target compiling tool has executed the preset operation corresponding to the finishing compiling tool, the execution main body determines that the target compiling tool accords with the compiling condition and can execute the subsequent step, if the execution main body determines that the target compiling tool does not execute the preset operation corresponding to the finishing compiling tool, the target compiling tool does not accord with the compiling condition, and the target compiling tool is required to execute the finishing preset operation first, and then the subsequent step can be executed.
And 140, in response to determining that the target compiling tool meets the compiling conditions, compiling and developing are performed through the target compiling tool based on the component information corresponding to the development task information and the code configuration file, and an application program is generated.
In this embodiment, the execution body may send, by determining that the target compiling tool meets the compiling condition, an acquisition request of the component information to the server according to development task information of the application program, where the acquisition request includes the development task information of the application program. After receiving the acquisition request of the execution body, the server may return the component information corresponding to the development task information according to the development task information of the application program in the acquisition request, and may return the reference information of the component information.
After the execution body receives the component information corresponding to the development task information, the execution body can compile and develop the component information and the code configuration file corresponding to the development task information through the selected target compiling tool. The execution body may generate xcconfig (environment variable) by executing an installation (install) instruction, build settings for configuring the whole project, including SEARCH PATH (search path), library path, and the like, by using a target compiling tool, and generate two scripts to be inserted into Build Phases (build stage) of compiling, so that the execution body may acquire a project configuration file corresponding to an application program through the target compiling tool, and generate a corresponding application program.
With continued reference to fig. 2, fig. 2 is a schematic diagram of an application scenario of the application compiling method according to the embodiment.
In the application scenario of fig. 2, the terminal 201 may display a development interface of an application program to a developer through a screen, the developer may fill in development task information of the application program in the development interface, the development task information of the application program may include name information, function information, and the like of the application program, the terminal 201 may generate a compiling request of the application program according to the development task information of the application program, obtain the development task information of the application program, and select a target compiling tool from a plurality of compiling tools according to a selection operation of the developer. Then, the terminal 201 acquires an open source code library corresponding to the development task information from the server 202 based on the development task information, and creates a corresponding code configuration file through a target compiling tool. Then, based on the preset operation corresponding to the compiling tool, the terminal 201 determines whether the target compiling tool meets the compiling condition, and if the target compiling tool meets the compiling condition, the terminal 201 can acquire the component information corresponding to the development task information from the server 202 based on the development task information, and compile and develop the component information and the code configuration file through the target compiling tool to generate the application program.
According to the application program compiling method provided by the embodiment of the disclosure, the target compiling tools are selected from a plurality of compiling tools by responding to the compiling request of the application program, the compiling request comprises development task information of the application program, then the corresponding code configuration file is created through the target compiling tools based on the open source code library corresponding to the development task information, and whether the target compiling tools meet the compiling conditions or not is determined based on the preset operation corresponding to the compiling tools, finally the compiling development is carried out through the target compiling tools in response to the fact that the target compiling tools meet the compiling conditions, the application program is generated, the same project of the same warehouse can support a plurality of compiling chain configurations, a user can select the required target compiling tools, the compatibility of the plurality of compiling tools for the same code library and the same open source style library is improved, so that the flexibility and the compatibility of engineering compiling can be improved, and the engineering configuration of the other compiling tools can be referred to in the compiling process for the engineering configuration of the engineering tools only by using one compiling tool, the open source version synchronization efficiency is improved, the adaptive working of the open source code can be carried out each time, and the compiling efficiency of the application program is improved.
Referring to fig. 3, fig. 3 shows a flowchart 300 of yet another embodiment of an application compilation method that may include the steps of:
in response to receiving the compilation request for the application, a target compilation tool is selected from the plurality of compilation tools, step 310.
Step 310 of this embodiment may be performed in a similar manner to step 110 of the embodiment shown in fig. 1, and is not repeated here.
Step 320, creating a corresponding code configuration file through a target compiling tool based on the open source code library corresponding to the development task information.
Step 320 of this embodiment may be performed in a similar manner to step 120 of the embodiment shown in fig. 1, and is not repeated here.
Step 330, it is detected whether the candidate compilation tool is in initial use.
In this embodiment, after the execution body selects the target compiling tool, the execution body may analyze and determine candidate compiling tools from a plurality of compiling tools, and detect whether the candidate compiling tools are used for the first time. The executing body can judge the local stored information, detect whether the local stored information comprises files generated by the candidate compiling tool in the using process, if the files generated by the candidate compiling tool in the using process exist, determine that the candidate compiling tool is not used for the first time, and if the files generated by the candidate compiling tool in the using process do not exist, determine that the candidate compiling tool is not used yet, and determine that the candidate compiling tool is used for the first time.
In step 340, in response to determining that the candidate compiling tool is not the first use, it is determined whether to delete the engineering configuration file corresponding to the candidate compiling tool, so as to determine that the target compiling tool meets the compiling condition.
In this embodiment, the execution body detects the local storage information to determine that the candidate compiling tool is not used for the first time, further analyzes the local storage information to determine whether the local storage information includes an engineering configuration file corresponding to the candidate compiling tool, where the engineering configuration file may be a configuration file generated by the compiling tool in the compiling development process, and determines whether to delete the engineering configuration file corresponding to the candidate compiling tool, so as to determine that the target compiling tool meets the compiling condition.
In step 350, in response to determining to delete the engineering configuration file corresponding to the candidate compiling tool, compiling and developing are performed through the target compiling tool based on the component information corresponding to the development task information and the code configuration file, and an application program is generated.
In this embodiment, the execution body further analyzes the locally stored information to determine that the engineering configuration file corresponding to the candidate compiling tool is not included, that is, determines that the engineering configuration file corresponding to the candidate compiling tool is deleted, and may determine that the target compiling tool meets the compiling condition, and then may send an acquisition request of the component information to the server according to the development task information of the application program, where the acquisition request includes the development task information of the application program. After receiving the acquisition request of the execution body, the server may return the component information corresponding to the development task information according to the development task information of the application program in the acquisition request, and may return the reference information of the component information.
After the execution body receives the component information corresponding to the development task information, the execution body can compile and develop the component information and the code configuration file corresponding to the development task information through the selected target compiling tool. The execution body may generate xcconfig (environment variable) by executing an installation (install) instruction, build settings for configuring the whole project, including SEARCH PATH (search path), library path, and the like, by using a target compiling tool, and generate two scripts to be inserted into Build Phases (build stage) of compiling, so that the execution body may acquire a project configuration file corresponding to an application program through the target compiling tool, and generate a corresponding application program.
In this embodiment, by detecting and judging the candidate compiling tool, before the target compiling tool executes the compiling and developing process, it is able to ensure that the project configuration file of the candidate compiling tool is deleted, and normal use of the target compiling tool can be ensured, so that compatibility of multiple compiling tools for the same code library and the same open source style library is improved, and for projects using only one compiling tool, the target compiling tool can also refer to project configuration of the candidate compiling tool in the compiling process, so that open source version synchronization efficiency is improved, adaptation work of open source codes is not required to be done each time, and efficiency of compiling an application program is improved.
Referring to fig. 4, fig. 4 shows a flowchart 400 of one embodiment of generating an application program, that is, the step 350, in response to determining to delete an engineering configuration file corresponding to a candidate compiling tool, performing compiling development by a target compiling tool based on component information corresponding to development task information and a code configuration file, and generating the application program, may include the steps of:
In step 410, in response to determining CocoaPods is not the first use, information extraction is performed on the engineering configuration file corresponding to CocoaPods to obtain CocoaPods a component workspace file, a code configuration file, a framework configuration file, and a configuration file of a build stage generated in the compiling process.
The target compilation tool may include Easybox and the candidate compilation tool may include CocoaPods. The candidate compilation tool CocoaPods may generate engineering configuration files such as a code configuration file (Podfile file), a component workspace file (swaapp demo. Workspace), a Framework configuration file (Pods folder and Framework folder), and a configuration file (Build Phases) of a build stage during compilation.
In this embodiment, the execution body may perform information extraction on the engineering configuration file corresponding to CocoaPods by detecting that CocoaPods is not the first use, and perform analysis and extraction on the file affecting the normal use of the target compiling tool Easybox in the engineering configuration file corresponding to CocoaPods, so as to obtain the engineering configuration files such as the code configuration file (Podfile file), the component workspace file (swaapp demo.work space), the Framework configuration file (Pods folder and Framework folder), and the configuration file (Build Phases) in the construction stage, which may be generated by the candidate compiling tool CocoaPods in the compiling process.
The code configuration files (Podfile files) may include a podfile.lock under the engineering folder (Podfile lock file automatically generated by the candidate compiling tool CocoaPods and used for saving a version of an installed Pods open source code library) and a Pods folder (all open source code library folders automatically generated by the candidate compiling tool CocoaPods) respectively, the frame configuration files (Pods folder and frame folder) may include a Pods folder and a frame folder in the engineering folder (swaapp demo. Project), and the configuration files (Build Phases) in the construction stage may include a Check Pods management.lock (script of configuration engineering), a Copy Pods Resources (resource copy script) and a Embeded Pods Frameworks (frameworks reference link) in the Build Phases option.
Step 420, delete CocoaPods component workspace files, code configuration files, framework configuration files, and configuration files of the build phase generated during the compilation process.
In this embodiment, after the execution body obtains CocoaPods the component workspace file, the code configuration file, the frame configuration file, and the configuration file of the build stage generated in the compiling process, the component workspace file, the code configuration file, the frame configuration file, and the configuration file of the build stage generated in the compiling process may be deleted CocoaPods.
In step 430, in response to determining to delete CocoaPods the corresponding engineering configuration file, compiling and developing are performed by Easybox based on the component information and the code configuration file corresponding to the development task information, so as to generate the application program.
In this embodiment, the execution body deletes the component workspace file, the code configuration file, the framework configuration file and the configuration file in the construction stage generated in the compiling process by CocoaPods, determines to delete the engineering configuration file corresponding to CocoaPods, and can compile and develop the component information and the code configuration file corresponding to the development task information through Easybox. The execution body may generate xcconfig (environment variable) by executing an install (install) instruction, build settings for configuring the whole project, including SEARCH PATH (search path), library path, and the like, by using Easybox, and generate two scripts to be inserted into Build Phases (build stage) of compiling, so that the execution body may acquire a project configuration file corresponding to an application program through Easybox, and generate a corresponding application program.
In this embodiment, by detecting and judging CocoaPods, before the compiling and developing process is executed in Easybox, it can be ensured that the engineering configuration file of CocoaPods is deleted, and normal use of Easybox can be ensured, so that compatibility of multiple compiling tools for the same code library and the same open source style library is improved, and for the engineering using only Easybox, easybox can also refer to engineering configuration of CocoaPods in the compiling process, so that open source version synchronization efficiency is improved, adaptation work of open source codes is not required to be done each time, and application compiling efficiency is improved.
Referring to fig. 5, fig. 5 shows a flowchart 500 of yet another embodiment of generating an application program, that is, step 350, in response to determining to delete an engineering configuration file corresponding to a candidate compiling tool, compiling and developing the application program by a target compiling tool based on component information corresponding to development task information and a code configuration file, and may further include the steps of:
In step 510, in response to determining Easybox is not the first use, information extraction is performed on the engineering configuration file corresponding to Easybox, so as to obtain a component workspace file, a code configuration file, a framework configuration file and an in-engineering box configuration file generated in the compiling process of Easybox.
The target compilation tool may include CocoaPods and the candidate compilation tool may include Easybox. The candidate compiling tool Easybox may generate a code configuration file (boxfile file), a component workspace file (swanappdemo.workspace), a Framework configuration file (resource copy script and Framework folder), and an engineering configuration file such as an engineering box configuration file (swanappdemo.debug.xccon fig) in the compiling process.
In this embodiment, the execution body may perform information extraction on the engineering configuration file corresponding to Easybox by detecting that Easybox is not the first use, and perform analysis and extraction on the file affecting normal use of the target compiling tool CocoaPods in the engineering configuration file corresponding to Easybox, so as to obtain the engineering configuration files such as the code configuration file (boxfile file), the component workspace file (swaapp demo.work space), the Framework configuration file (resource copy script and Framework folder), and the box configuration file (swaapp demo.debug.xcmonfig) in the engineering, which may be generated by the candidate compiling tool Easybox in the compiling process.
The code configuration files (boxfile files) may include, among other things, automatically generated easybox folders (candidate compilation tool Easybox automatically generates files for caching open source code libraries) and mgit folders (candidate compilation tool Easybox relies on a multiple warehouse management cache file for saving hook scripts and git logs of git, etc.), framework configuration files (resource copy scripts and Framework folders) may include resource copy scripts and frameworks reference links in engineering folders (swanappdemo. Project), and in-engineering box configuration files (swanappdemo. Debugong. Xccon fig.) may include box configurations in swanappdemo. Project, such as swanappdemo. Debugu. Xccon fig, etc.
Step 520, delete Easybox the component workspace file, code configuration file, framework configuration file, and in-engineering box configuration file generated during the compilation process.
In this embodiment, after the execution body obtains Easybox the component workspace file, the code configuration file, the frame configuration file, and the in-engineering box configuration file generated in the compiling process, the component workspace file, the code configuration file, the frame configuration file, and the in-engineering box configuration file generated in the compiling process may be deleted Easybox.
In step 530, in response to determining to delete Easybox the corresponding engineering configuration file, compiling and developing are performed by CocoaPods based on the component information and the code configuration file corresponding to the development task information, so as to generate the application program.
In this embodiment, the execution body deletes the project configuration file corresponding to Easybox based on the component information and the code configuration file corresponding to the development task information, determines to delete the project configuration file corresponding to Easybox, and may compile and develop the component information and the code configuration file corresponding to the development task information through CocoaPods. The execution body may generate xcconfig (environment variable) by executing an install (install) instruction, build settings for configuring the whole project, including SEARCH PATH (search path), library path, and the like, by using CocoaPods, and generate two scripts to be inserted into Build Phases (build stage) of compiling, so that the execution body may acquire a project configuration file corresponding to an application program through CocoaPods, and generate a corresponding application program.
In this embodiment, by detecting and judging Easybox, before the compiling and developing process is executed in CocoaPods, it can be ensured that the engineering configuration file of Easybox is deleted, and normal use of CocoaPods can be ensured, so that compatibility of multiple compiling tools for the same code library and the same open source style library is improved, and for the engineering using only CocoaPods, cocoaPods can also refer to engineering configuration of Easybox in the compiling process, so that open source version synchronization efficiency is improved, adaptation work of open source codes is not required to be done each time, and application compiling efficiency is improved.
Referring to fig. 6, fig. 6 shows a flowchart 600 of another embodiment of an application compilation method that may include the steps of:
In response to receiving the compiling request for the application, a target compiling tool is selected from the plurality of compiling tools, step 610.
Step 610 of this embodiment may be performed in a similar manner to step 110 of the embodiment shown in fig. 1, and is not repeated here.
Step 620, creating a corresponding code configuration file through a target compiling tool based on the open source code library corresponding to the development task information.
Step 620 of this embodiment may be performed in a similar manner to step 120 of the embodiment shown in fig. 1, and is not repeated here.
Step 630, it is determined whether the project profiles of the plurality of compiling tools are installed in the same target project catalog, so as to determine that the target compiling tools meet the compiling conditions.
In this step, the compiling tool may further include installing the project configuration files of the plurality of compiling tools in the same target project catalog for the preset operation, and then the execution body may analyze the installation positions of the project configuration files of the plurality of compiling tools to determine whether the project configuration files of the plurality of compiling tools are installed in the same target project catalog, so as to determine that the target compiling tool meets the compiling condition.
The execution main body can analyze the installation positions of the engineering files of the plurality of compiling tools, the engineering configuration files such as the component working space files and the like, and judge whether the engineering files of the plurality of compiling tools, the engineering configuration files such as the component working space files and the like are installed in the same target engineering catalog or not so as to determine that the target compiling tools meet the compiling conditions.
In response to determining that the project configuration files of the plurality of compilation tools are installed in the same target project catalog, a project file and a component workspace file corresponding to the target compilation tool are selected in the target project catalog, step 640.
In this step, the execution subject may determine that the project configuration files of the plurality of compiling tools are installed in the same target project catalog by determining that the project configuration files and the component workspace files corresponding to the target compiling tools are selected from the target project catalog.
Step 650, compiling and developing by the target compiling tool based on the engineering file, the component workspace file, the component information corresponding to the development task information and the code configuration file corresponding to the target compiling tool, and generating the application program.
In this step, after the execution body selects the project file and the component workspace file corresponding to the target compiling tool from the target project catalog, the component information and the code configuration file corresponding to the development task information may be compiled and developed by the target compiling tool using the corresponding project file and component workspace file. The execution body may generate xcconfig (environment variable) by executing an installation (install) instruction, build settings for configuring the whole project, including SEARCH PATH (search path), library path, and the like, by using a target compiling tool, and generate two scripts to be inserted into Build Phases (build stage) of compiling, so that the execution body may acquire a project configuration file corresponding to an application program through the target compiling tool, and generate a corresponding application program.
In this embodiment, by detecting and judging configuration files of multiple compiling tools, before the target compiling tool executes the compiling and developing process, it is ensured that engineering configuration files of multiple compiling tools are installed in the same target engineering catalog, normal use of the target compiling tool can be ensured, compatibility of multiple compiling tools for the same code library and the same open source style library is improved, and for engineering using only one compiling tool, the target compiling tool can also refer to engineering configuration of candidate compiling tools in the compiling process, so that open source version synchronization efficiency is improved, adaptation work of open source codes is not required to be done each time, and application program compiling efficiency is improved.
With further reference to fig. 7, as an implementation of the method shown in the foregoing figures, the present disclosure provides an embodiment of an application compiling apparatus, where the apparatus embodiment corresponds to the method embodiment shown in fig. 1, and the apparatus may be specifically applied to various electronic devices.
As shown in fig. 7, the application compiling apparatus 700 of the present embodiment includes a selecting module 710, a creating module 720, a determining module 730, and a generating module 740.
Wherein the selection module 710 is configured to select a target compilation tool from a plurality of compilation tools in response to receiving a compilation request of an application, wherein the compilation request includes development task information of the application;
a creating module 720 configured to create a corresponding code configuration file through a target compiling tool based on an open source code library corresponding to the development task information;
A determining module 730 configured to determine whether the target compiling tool meets the compiling condition based on a preset operation corresponding to the compiling tool;
the generating module 740 is configured to generate an application program by performing compilation development by the target compiling tool based on the component information and the code configuration file corresponding to the development task information in response to determining that the target compiling tool meets the compiling condition.
In some alternatives of this embodiment, the preset operation includes deleting an engineering configuration file corresponding to a candidate compiling tool in the plurality of compiling tools, and the determining module is further configured to detect whether the candidate compiling tool is first used, determine whether to delete the engineering configuration file corresponding to the candidate compiling tool to determine that the target compiling tool meets the compiling condition in response to determining that the candidate compiling tool is not first used, and generate the application program by compiling and developing the target compiling tool based on component information corresponding to development task information and the code configuration file in response to determining that the engineering configuration file corresponding to the candidate compiling tool is deleted.
In some alternatives of this embodiment, the target compilation tool includes Easybox, the candidate compilation tool includes CocoaPods, and the generation module is further configured to, in response to determining that CocoaPods is not initial use, extract information from the project configuration files corresponding to CocoaPods to obtain the component workspace files, the code configuration files, the frame configuration files, and the configuration files of the build phase generated during compilation CocoaPods, delete CocoaPods the component workspace files, the code configuration files, the frame configuration files, and the configuration files of the build phase generated during compilation, and in response to determining that the project configuration files corresponding to CocoaPods are deleted, compile and develop by Easybox based on the component information and the code configuration files corresponding to development task information to generate the application program.
In some alternatives of this embodiment, the target compilation tool includes CocoaPods, the candidate compilation tool includes Easybox, and the generation module is further configured to, in response to determining that Easybox is not first-time use, extract information from the project configuration files corresponding to Easybox to obtain Easybox a component workspace file, a code configuration file, a frame configuration file, and an in-project box configuration file generated during compilation, delete Easybox the component workspace file, the code configuration file, the frame configuration file, and the in-project box configuration file generated during compilation, and in response to determining that the project configuration file corresponding to Easybox is deleted, compile and develop by CocoaPods based on the component information and the code configuration file corresponding to development task information to generate the application program.
In some alternatives of this embodiment, the preset operation further includes installing engineering configuration files of multiple compiling tools in the same target engineering catalog, and the determining module is further configured to determine whether the engineering configuration files of the multiple compiling tools are installed in the same target engineering catalog to determine that the target compiling tools meet compiling conditions, and the generating module is further configured to select the engineering files and the component workspace files corresponding to the target compiling tools in the target engineering catalog in response to determining that the engineering configuration files of the multiple compiling tools are installed in the same target engineering catalog, and compile and develop the application program by the target compiling tools based on the engineering files, the component workspace files, the component information corresponding to the development task information, and the code configuration files corresponding to the target compiling tools.
According to the application program compiling device provided by the embodiment of the disclosure, the target compiling tools are selected from a plurality of compiling tools by responding to the compiling request of the application program, the compiling request comprises development task information of the application program, then the corresponding code configuration file is created through the target compiling tools based on the open source code library corresponding to the development task information, and whether the target compiling tools meet the compiling conditions or not is determined based on the preset operation corresponding to the compiling tools, finally the compiling development is carried out through the target compiling tools in response to the fact that the target compiling tools meet the compiling conditions, the application program is generated, the same project of the same warehouse can support a plurality of compiling chain configurations, a user can select the required target compiling tools, the compatibility of the plurality of compiling tools for the same code library and the same open source style library is improved, so that the flexibility and the compatibility of engineering compiling can be improved, and the engineering configuration of the other compiling tools can be referred to in the compiling process for the engineering configuration of the engineering tools only by using one compiling tool, the open source version synchronization efficiency is improved, the adaptive working of the open source code can be carried out each time, and the compiling efficiency of the application program is improved.
Those skilled in the art will appreciate that the above-described apparatus also includes some other well-known structures, such as a processor, memory, etc., which are not shown in fig. 7 in order to unnecessarily obscure embodiments of the present disclosure.
In the technical scheme of the disclosure, the related processes of collecting, storing, using, processing, transmitting, providing, disclosing and the like of the personal information of the user accord with the regulations of related laws and regulations, and the public order colloquial is not violated.
According to embodiments of the present disclosure, the present disclosure also provides an electronic device, a readable storage medium and a computer program product.
Fig. 8 illustrates a schematic block diagram of an example electronic device 800 that may be used to implement embodiments of the present disclosure. 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 telephones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions, are meant to be exemplary only, and are not meant to limit implementations of the disclosure described and/or claimed herein.
As shown in fig. 8, the electronic device 800 includes a computing unit 801 that can perform various appropriate actions and processes according to a computer program stored in a Read Only Memory (ROM) 802 or a computer program loaded from a storage unit 808 into a Random Access Memory (RAM) 803. In the RAM 803, various programs and data required for the operation of the device 800 can also be stored. The computing unit 801, the ROM 802, and the RAM 803 are connected to each other by a bus 804. An input/output (I/O) interface 805 is also connected to the bus 804.
Various components in the electronic device 800 are connected to the I/O interface 805, including an input unit 806 such as a keyboard, a mouse, etc., an output unit 807 such as various types of displays, speakers, etc., a storage unit 808 such as a magnetic disk, an optical disk, etc., and a communication unit 809 such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 809 allows the device 800 to exchange information/data with other devices via a computer network such as the internet and/or various telecommunication networks.
The computing unit 801 may be a variety of general and/or special purpose processing components having processing and computing capabilities. Some examples of computing unit 801 include, but are not limited to, a Central Processing Unit (CPU), a Graphics Processing Unit (GPU), various specialized Artificial Intelligence (AI) computing chips, various computing units running machine learning model algorithms, a Digital Signal Processor (DSP), and any suitable processor, controller, microcontroller, etc. The computing unit 801 performs the various methods and processes described above, such as an application compiling method. For example, in some embodiments, the application compilation method may be implemented as a computer software program tangibly embodied on a machine-readable medium, such as the storage unit 808. In some embodiments, part or all of the computer program may be loaded and/or installed onto device 800 via ROM 802 and/or communication unit 809. When a computer program is loaded into RAM 803 and executed by computing unit 801, one or more steps of the application compilation method described above may be performed. Alternatively, in other embodiments, the computing unit 801 may be configured to perform the application compilation method by any other suitable means (e.g., by means of firmware).
Various implementations of the systems and techniques described here above may be implemented in digital electronic circuitry, integrated circuit systems, field Programmable Gate Arrays (FPGAs), application Specific Integrated Circuits (ASICs), application Specific Standard Products (ASSPs), systems On Chip (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and/or combinations thereof. These various embodiments may include being 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 a special or general purpose programmable processor, operable to receive data and instructions from, and to transmit data and instructions to, a storage system, at least one input device, and at least one output device.
Program code for carrying out methods of the present disclosure may be written in any combination of one or more programming languages. These program code may be provided to a processor or controller of a general purpose computer, special purpose computer, or other programmable data processing apparatus such that the program code, when executed by the processor or controller, causes the functions/operations specified in the flowchart and/or block diagram to be implemented. The program code may execute entirely on the machine, partly on the machine, as a stand-alone software package, partly on the machine and partly on a remote machine or entirely on the remote machine or server.
In the context of this disclosure, a machine-readable medium may be a tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. The machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
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 the user and a keyboard and a pointing device (e.g., a mouse or a trackball) by which the 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 may 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 input, speech input, or tactile input.
The systems and techniques described here can be implemented in a computing system that includes a background 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 background, 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 a Local Area Network (LAN), a Wide Area Network (WAN), and the Internet.
The computer system may include a client and a server. The client and server are typically 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. The server may be a cloud server, a server of a distributed system, or a server incorporating a blockchain.
It should be appreciated that various forms of the flows shown above may be used to reorder, add, or delete steps. For example, the steps recited in the present disclosure may be performed in parallel or sequentially or in a different order, provided that the desired results of the technical solutions of the present disclosure are achieved, and are not limited herein.
The above detailed description should not be taken as limiting the scope of the present disclosure. It will be apparent to those skilled in the art that various modifications, combinations, sub-combinations and alternatives are possible, depending on design requirements and other factors. Any modifications, equivalent substitutions and improvements made within the spirit and principles of the present disclosure are intended to be included within the scope of the present disclosure.