CN113821486B - Method and device for determining dependency relationship between pod libraries and electronic equipment - Google Patents

Method and device for determining dependency relationship between pod libraries and electronic equipment Download PDF

Info

Publication number
CN113821486B
CN113821486B CN202111383068.9A CN202111383068A CN113821486B CN 113821486 B CN113821486 B CN 113821486B CN 202111383068 A CN202111383068 A CN 202111383068A CN 113821486 B CN113821486 B CN 113821486B
Authority
CN
China
Prior art keywords
pod
published
libraries
entering
library
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202111383068.9A
Other languages
Chinese (zh)
Other versions
CN113821486A (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 Jindi Technology Co Ltd
Original Assignee
Beijing Jindi 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 Jindi Technology Co Ltd filed Critical Beijing Jindi Technology Co Ltd
Priority to CN202111383068.9A priority Critical patent/CN113821486B/en
Priority to CN202210080477.XA priority patent/CN114936185A/en
Publication of CN113821486A publication Critical patent/CN113821486A/en
Application granted granted Critical
Publication of CN113821486B publication Critical patent/CN113821486B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • G06F16/164File meta data generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/172Caching, prefetching or hoarding of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/1873Versioning file systems, temporal file systems, e.g. file system supporting different historic versions of files

Abstract

The embodiment of the application provides a method and a device for determining dependency relationship between pod libraries, a computer storage medium and electronic equipment, wherein the method for determining the dependency relationship between the pod libraries comprises the following steps: acquiring the dependency relationship of all published pod libraries under the shell engineering; determining a pod library entering a development state in the issued pod library, and acquiring a description file of the pod library entering the development state; and according to the description file of the pod entering the development state, finding out the dependency relationship of the pod entering the development state in the dependency relationship. According to the method and the device for determining the dependency relationship between the pod libraries, the computer storage medium and the electronic device, manual determination or operation of the pod libraries is not needed, and the speed and the efficiency for determining the dependency relationship are improved.

Description

Method and device for determining dependency relationship between pod libraries and electronic equipment
Technical Field
The application relates to the technical field of data processing, in particular to a method and a device for determining dependency relationship between pod libraries, a computer storage medium and electronic equipment.
Background
In the development of an application program, since various functions to be realized by the application program are involved, for this reason, for the development of each function, a plurality of functional components exist by dividing the components, that is, the development of one functional component aims to realize at least one function, and this development mode is also called as componentization development in the industry. For this reason, in the development process of the application program, a componentized management tool is introduced, for example, for the development of the application program based on the IOS system, a CocoaPods tool is generally adopted for management. When the componentization development is carried out based on the CocoaPods tool, aiming at the development of each functional component, a Pod library is allocated to carry out independent writing management on related codes, and the Pod libraries corresponding to all the components are managed under a shell project.
With the increasing number of the components, the number of the corresponding pod libraries also increases, when the pod libraries are to be published, the publication sequence needs to be determined according to the dependency relationship of the pod libraries, and the failure of the publication of the pod libraries caused by the occurrence of errors in the sequence is avoided. In the prior art, when the dependency relationship is determined, one mode is determined manually, and the other mode is determined by operating the pod library, however, the two modes lead to the increase of the number of functional components and further the increase of the number of the pod libraries along with the continuous richness of the product functions, which leads to the slower determination speed and the lower efficiency of the dependency relationship.
Disclosure of Invention
Embodiments of the present application provide a method and an apparatus for determining a dependency relationship between pod libraries, a computer storage medium, and an electronic device, so as to overcome or alleviate the above technical problems in the prior art.
The technical scheme adopted by the application is as follows:
a method of determining dependencies between pod libraries, comprising:
acquiring the dependency relationship of all published pod libraries under the shell engineering;
determining a pod library entering a development state in the issued pod library, and acquiring a description file of the pod library entering the development state;
and according to the description file of the pod entering the development state, finding out the dependency relationship of the pod entering the development state in the dependency relationship.
Optionally, in an embodiment of the present application, the obtaining of the dependency relationship of all published pod libraries in the shell engineering includes:
acquiring a description file of a published pod library under the shell project;
and analyzing the description file of the published pod library to establish the dependency relationship of all the published pod libraries.
Optionally, in an embodiment of the present application, the analyzing the description file of the published pod library to establish a dependency relationship of all the published pod libraries includes:
for each published pod, extracting the name of the corresponding pod and the name of the published pod directly dependent on the corresponding pod from the description file of each published pod;
storing the names of all the published pod libraries and the names of the published pod libraries on which the published pod libraries directly depend in a key-value pair manner so as to establish the dependency relationship of all the published pod libraries.
Optionally, in an embodiment of the present application, the storing, in a key-value pair manner, names of all published pod libraries and names of published pod libraries on which the published pod libraries directly depend, so as to establish a dependency relationship of all published pod libraries includes:
for each published pod, its name serves as the key of the key-value pair, and the name of the published pod on which it directly depends serves as the value;
and establishing the dependency relationship of all the issued pod libraries according to the keys and the values corresponding to all the issued pod libraries.
Optionally, in an embodiment of the present application, the storing, in a key-value pair manner, names of all published pod libraries and names of published pod libraries on which the published pod libraries directly depend to establish a dependency relationship of all published pod libraries further includes:
for each published pod, the name of the published pod on which it indirectly depends is determined and added to the value.
Optionally, in an embodiment of the present application, the determining a pod library entering a development state in the published pod library includes:
and analyzing the description file of the published pod library, acquiring the dependency mode description of the published pod library from the description file, and determining the pod library entering a development state in the published pod library according to the dependency mode description.
Optionally, in an embodiment of the present application, if the dependency pattern is described as a path dependency pattern, the corresponding published pod is a pod library entering a development state; and if the dependency mode is described as a version dependency mode or a remote dependency mode, the corresponding published pod is a pod which does not enter a development state.
Optionally, in an embodiment of the present application, after determining a pod library entering a development state in the published pod libraries and acquiring a description file of the pod library entering the development state, the method includes: acquiring the name of the pod entering the development state from the description file of the pod entering the development state, and adding the name to the built pod entering the development state;
the finding out the dependency relationship of the pod entering the development state in the dependency relationship according to the description file of the pod entering the development state includes: and finding out the dependency relationship of the pod entering the development state in the dependency relationship according to the name of the pod entering the development state recorded in the pod list of the development state.
A method for establishing a dependency relationship between pod libraries comprises the following steps:
acquiring a description file of a published pod library under a shell project;
and analyzing the description file of the published pod library to establish the dependency relationship of all the published pod libraries.
Optionally, in an embodiment of the present application, the analyzing the description file of the published pod library to establish a dependency relationship of all the published pod libraries includes:
for each published pod, extracting the name of the corresponding pod and the name of the published pod directly dependent on the corresponding pod from the description file of each published pod;
storing the names of all the published pod libraries and the names of the published pod libraries on which the published pod libraries directly depend in a key-value pair manner so as to establish the dependency relationship of all the published pod libraries.
Optionally, in an embodiment of the present application, the storing, in a key-value pair manner, names of all published pod libraries and names of published pod libraries on which the published pod libraries directly depend, so as to establish a dependency relationship of all published pod libraries includes:
for each published pod, its name serves as the key of the key-value pair, and the name of the published pod on which it directly depends serves as the value;
and establishing the dependency relationship of all the issued pod libraries according to the keys and the values corresponding to all the issued pod libraries.
Optionally, in an embodiment of the present application, the storing, in a key-value pair manner, names of all published pod libraries and names of published pod libraries on which the published pod libraries directly depend to establish a dependency relationship of all published pod libraries further includes:
for each published pod, the name of the published pod on which it indirectly depends is determined and added to the value.
An apparatus for determining dependencies between pod libraries, comprising:
the dependency relationship acquisition unit is used for acquiring the dependency relationship of all issued pod libraries under the shell engineering;
a pod library determining unit, configured to determine a pod library entering a development state in the published pod libraries, and acquire a description file of the pod library entering the development state;
and the dependency relationship screening unit is used for searching the dependency relationship of the pod library entering the development state in the dependency relationship according to the description file of the pod library entering the development state.
An apparatus for establishing a dependency relationship between pod libraries, comprising:
the description file acquisition unit is used for acquiring the description file of the published pod library under the shell project;
and the dependency relationship establishing unit is used for analyzing the description file of the published pod library to establish the dependency relationship of all the published pod libraries.
A computer storage medium having stored thereon a computer executable program, the computer executable program being operative to perform a method as in any one of the embodiments of the present application.
An electronic device comprising a memory for storing thereon a computer-executable program and a processor for executing the computer-executable program to implement a method of implementing any of the embodiments of the present application.
According to the method and the device, the dependency relationship of all published pod libraries in shell engineering is obtained; determining a pod library entering a development state in the issued pod library, and acquiring a description file of the pod library entering the development state; according to the description file of the pod entering the development state, the dependency relationship of the pod entering the development state is found out in the dependency relationship, manual determination or operation of the pod is not needed, and the determination speed and efficiency of the dependency relationship are improved.
Drawings
Fig. 1 is a schematic flowchart of a method for determining dependency relationships between pod libraries according to an embodiment of the present application;
fig. 2 is a schematic flowchart of a method for establishing a dependency relationship between pod libraries according to an embodiment of the present application;
fig. 3 is a schematic structural diagram of an apparatus for determining dependency relationships between pod libraries according to an embodiment of the present application;
fig. 4 is a schematic structural diagram of an apparatus for establishing a dependency relationship between pod libraries according to an embodiment of the present application;
FIG. 5 is a schematic diagram of a processing system for dependency relationships in an embodiment of the present application;
fig. 6 is a schematic structural diagram of an electronic device according to an embodiment of the present application.
Detailed Description
To make the technical problems, technical solutions and advantages to be solved by the present application clearer, the following detailed description is made with reference to the accompanying drawings and specific embodiments.
According to the method and the device, the dependency relationship of all published pod libraries in shell engineering is obtained, the pod libraries entering a development state in the published pod libraries are determined, and the description files of the pod libraries entering the development state are obtained; according to the description file of the pod entering the development state, the dependency relationship of the pod entering the development state is found out in the dependency relationship, manual determination or operation of the pod is not needed, and the determination speed and efficiency of the dependency relationship are improved.
Fig. 1 is a schematic flowchart of a method for determining dependency relationships between pod libraries according to an embodiment of the present application; as shown in fig. 1, the present embodiment is mainly used for determining the dependency relationship of pod libraries entering a development state, and specifically, the method for determining the dependency relationship between pod libraries includes:
s101, acquiring the dependency relationship of all published pod libraries in the shell engineering;
in this embodiment, the shell project is also referred to as project, and the project is used for managing all pod libraries related to application code development, each pod library corresponds to development of a component of an application, and the components are distinguished based on functions of the application.
In this embodiment, the dependency relationship based on the published pod is that the dependency relationship of each pod is accurate after the pod is published.
In this embodiment, the dependency relationship includes a direct dependency relationship and an indirect dependency relationship between the published pod libraries. For example, the published pod 1 depends on the published pod 2, and the published pod 2 depends on the published pod 3, so that the dependency relationship between the published pod 1 and the published pod 2 is a direct dependency relationship, and since the published pod 2 depends on the published pod 3, the dependency relationship between the published pod 2 and the published pod 3 is a direct dependency relationship, and the dependency relationship between the published pod 1 and the published pod 3 is an indirect dependency relationship. Here, in determining the dependency relationship, it is determined in one direction, for example, it is determined that the published pod 1 depends on the published pod 2, and therefore, it is not necessary to determine whether the published pod 2 depends on the published pod 1, and therefore, the determination speed and efficiency of the dependency relationship are further improved.
In this embodiment, any file capable of reflecting the dependency relationship between the pod libraries can be analyzed, so that the dependency relationship of all published pod libraries in the shell project can be obtained.
In this embodiment, the dependency relationship may be embodied in the form of a map (map), and of course, in some other embodiments, the dependency relationship may also be embodied in the form of a list or an index or a tree.
Specifically, when acquiring dependencies among all published pod libraries in the shell project, the dependencies may be acquired in parallel, that is, the dependencies of a plurality of published pod libraries are acquired simultaneously, or acquired in series, that is, only one dependency of a published pod library is acquired each time. Specifically, the parallel acquisition or the serial acquisition is flexibly set according to the resource condition or the requirement of an application scene.
In this embodiment, the dependency relationships of all published pod libraries to be acquired in step S101 may be established in advance, or may be established in real time in this embodiment, and are flexibly set according to an application scenario.
In this embodiment, the dependency relationships of all published pod libraries to be acquired in step S101 may be stored in a specified directory.
S102, determining a pod entering a development state in the issued pod, and acquiring a description file of the pod entering the development state;
specifically, in this embodiment, the determining a pod entering a development state in the published pod includes: and analyzing the description file of the published pod library, acquiring the dependency mode description of the published pod library from the description file, and determining the pod library entering a development state in the published pod library according to the dependency mode description.
Specifically, the description file of the published pod may be a file in which a dependency pattern of a pod is recorded at will, for example, in a specific application scenario, the description file of the pod may be a declaration file of the pod, the declaration file of the published pod includes a dependency pattern description of the pod, and when determining a pod entering a development state in the published pod according to the dependency pattern description, the dependency pattern description is parsed to obtain data describing a dependency relationship, so as to determine the pod entering the development state in the published pod.
Specifically, the declaration file of the published pod library is a podfile file in a CocoaPods tool for realizing componentized management, and data describing the dependency relationship of the published pod library is recorded in the file.
More specifically, the declaration file of the published pod library is a podfile file in a CocoaPods tool for realizing componentized management, and data describing the dependency relationship of the published pod library is recorded in a dependency list in specification of the file.
Further, if the dependency pattern is described as a path dependency pattern (also referred to as path dependency in the industry), the corresponding published pod is a pod library entering a development state; and if the dependency mode is described as a version dependency mode or a remote dependency mode, the corresponding published pod is a pod which does not enter a development state.
Therefore, the dependency relationships of all the published pod libraries are quickly determined based on the description files of all the published pod libraries, and the dependency relationships of the published pod libraries do not need to be acquired by executing the pod libraries each time (for example, the pod installs in the pod libraries do not need to be executed each time).
Further, after the determining the pod library entering the development state in the published pod library and acquiring the description file of the pod library entering the development state, before step S103, the method may further include: and acquiring the name of the pod entering the development state from the description file of the pod entering the development state, and adding the name into the established pod list entering the development state, thereby effectively realizing the maintenance of the pod entering the development state in a list mode.
In this embodiment, the adding may be real-time adding, that is, each time a pod entering the development state is determined, the name of the corresponding pod is added to the pod list entering the development state; the adding can also be that after all the pod libraries entering the development state are determined, the names of all the corresponding pod libraries are added to the pod library list entering the development state in a batch mode.
Specifically, the name of the pod entering the development state may be acquired from the description file of the pod entering the development state.
S103, according to the description file of the pod entering the development state, finding out the dependency relationship of the pod entering the development state in the dependency relationship.
In this embodiment, the finding out the dependency relationship of the pod entering the development state in the dependency relationship according to the description file of the pod entering the development state includes: and according to the names of the pod entering the development state recorded in the pod list of the development state, finding out the dependency relationship of the pod entering the development state in the dependency relationship, thereby improving the speed and efficiency of determining the dependency relationship.
In the above embodiment, in consideration of the issue of the subsequent pod, the current version number of the pod, the version number to be issued, and the storage address of the source code may also be added to the description file of the pod entering the development state, so as to facilitate the issue after the pod is developed.
Fig. 2 is a schematic flowchart of a method for establishing a dependency relationship between pod libraries according to an embodiment of the present application; as shown in fig. 2, the method for establishing a dependency relationship between pod libraries provided in this embodiment includes:
s201, obtaining a description file of a published pod library under a shell project;
s202, analyzing the description file of the published pod library to establish the dependency relationship of all the published pod libraries.
Step S101 in the above-described embodiment of fig. 1 may include steps S201 and S202.
Specifically, the step of establishing the dependency relationship of all published pod libraries by parsing the description file of the published pod libraries includes: for each published pod, extracting the name of the corresponding pod and the name of the published pod directly dependent on the corresponding pod from the description file of each published pod;
storing the names of all the published pod libraries and the names of the published pod libraries on which the published pod libraries directly depend in a key-value pair manner so as to establish the dependency relationship of all the published pod libraries.
Further, the storing the names of all the published pod libraries and the names of the published pod libraries on which the published pod libraries directly depend in a key-value pair manner to establish the dependency relationship of all the published pod libraries includes:
for each published pod, its name serves as the key of the key-value pair, and the name of the published pod on which it directly depends serves as the value;
and establishing the dependency relationship of all the issued pod libraries according to the keys and the values corresponding to all the issued pod libraries.
Further, the storing, in a key-value pair manner, names of all published pod libraries and names of published pod libraries on which the published pod libraries directly depend to establish dependency relationships of all published pod libraries further includes:
and aiming at each published pod, determining the name of the published pod on which the published pod depends indirectly, and adding the name of the published pod on which the published pod depends indirectly into the value, so that the direct dependency relationship and the indirect dependency relationship can be recorded based on the same key-value pair.
In this embodiment, for each published pod, the name of the published pod on which the indirect dependency is determined may be specifically determined in a recursive traversal manner, for example, pod 1 depends on pod 2, and then a pod (for example, pod 3) on which pod 2 depends is determined, so as to determine that pod 1 indirectly depends on pod 3, and so on, so as to quickly determine the indirect dependency relationship of the published pod.
Here, the method of the embodiment shown in fig. 2 may be used as a step in the embodiment shown in fig. 1.
Fig. 3 is a schematic structural diagram of an apparatus for determining dependency relationships between pod libraries according to an embodiment of the present application; as shown in fig. 3, it includes:
a dependency relationship obtaining unit 301, configured to obtain dependency relationships of all published pod libraries in the shell project,
a pod library determining unit 302, configured to determine a pod library entering a development state in the published pod libraries, and obtain a description file of the pod library entering the development state;
and the dependency relationship screening unit 303 is configured to find out, from the dependency relationship, a dependency relationship of the pod library entering the development state according to the description file of the pod library entering the development state.
Specifically, in an embodiment, the apparatus for establishing a dependency relationship between pod libraries further includes: the method comprises the following steps:
the description file acquisition unit is used for acquiring the description file of the published pod library under the shell project;
and the dependency relationship establishing unit is used for analyzing the description file of the published pod library to establish the dependency relationship of all the published pod libraries.
Optionally, in an embodiment, the dependency relationship establishing unit is specifically configured to, for each published pod, extract a name of a corresponding pod and a name of a published pod on which the corresponding pod directly depends from a description file of the each published pod; and storing the names of all the published pod libraries and the names of the published pod libraries on which the published pod libraries directly depend in a key-value pair mode so as to establish the dependency relationship of all the published pod libraries.
Optionally, in an embodiment, the dependency relationship establishing unit is specifically configured to: for each published pod, its name serves as the key of the key-value pair, and the name of the published pod on which it directly depends serves as the value; and establishing the dependency relationship of all the issued pod libraries according to the keys and the values corresponding to all the issued pod libraries.
Optionally, in an embodiment, the dependency relationship establishing unit is further configured to, for each published pod, determine a name of a published pod on which it indirectly depends, and add the name of the published pod on which it indirectly depends to the value.
Optionally, in an embodiment, the pod library determining unit is specifically configured to parse the description file of the published pod library, obtain a dependency pattern description of the published pod library from the description file, and determine, according to the dependency pattern description, a pod library entering a development state in the published pod library.
Optionally, in an embodiment, if the dependency pattern is described as a path dependency pattern, the corresponding published pod is a pod entering a development state; and if the dependency mode is described as a version dependency mode or a remote dependency mode, the corresponding published pod is a pod which does not enter a development state.
Specifically, in an embodiment, the apparatus for establishing a dependency relationship between pod libraries further includes: the adding unit is used for acquiring the name of the pod entering the development state from the description file of the pod entering the development state and adding the name into the built pod entering the development state;
correspondingly, the dependency relationship screening unit is specifically configured to find out, in the dependency relationship, the dependency relationship of the pod entering the development state according to the name of the pod entering the development state recorded in the pod list of the development state.
Fig. 4 is a schematic structural diagram of an apparatus for establishing a dependency relationship between pod libraries according to an embodiment of the present application; as shown in fig. 4, it includes:
a description file acquiring unit 401, configured to acquire a description file of a published pod library in a shell project;
a dependency relationship establishing unit 402, configured to analyze the description file of the published pod library to establish a dependency relationship of all published pod libraries.
In this embodiment, for a specific exemplary description of the description file obtaining unit 401 and the dependency relationship establishing unit 402, reference may be made to the above description of fig. 3.
FIG. 5 is a schematic diagram of a processing system for dependency relationships in an embodiment of the present application; as shown in fig. 5, which includes the determining means described in fig. 3, and the establishing means described in fig. 4.
Embodiments of the present application provide a computer storage medium having a computer executable program stored thereon, where the computer executable program is executed to implement a method according to any one of the embodiments of the present application.
Fig. 6 is a schematic structural diagram of an electronic device according to an embodiment of the present application; as shown in fig. 6, the electronic device includes a memory 601 for storing a computer-executable program and a processor 602 for executing the computer-executable program to implement the method according to any embodiment of the present application.
In particular, according to an embodiment of the present disclosure, the processes described above with reference to the flowcharts may be implemented as computer software programs. For example, embodiments of the present disclosure include a computer program product comprising a computer program embodied on a computer readable medium, the computer program comprising program code for performing the method illustrated in the flow chart. In such an embodiment, the computer program may be downloaded and installed from a network via the communication section, and/or installed from a removable medium. The computer program, when executed by a Central Processing Unit (CPU), performs the above-described functions defined in the method of the present application. It should be noted that the computer readable medium described herein can be a computer readable signal medium or a computer readable storage medium or any combination of the two. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples of the computer readable storage medium may include, but are not limited to: an electrical connection having 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. In the present application, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In this application, however, a computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wire, fiber optic cable, RF, etc., or any suitable combination of the foregoing.
Computer program code for carrying out operations for aspects of the present application may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C + + or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet service provider).
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present application. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The units described in the embodiments of the present application may be implemented by software or hardware. The described units may also be located in the processor. Where the names of these elements do not in some cases constitute a limitation on the elements themselves, for example, a receiving element may also be described as an "element that receives a user's web browsing request".
The above description is only a preferred embodiment of the application and is illustrative of the principles of the technology employed. It will be appreciated by those skilled in the art that the scope of the invention herein disclosed is not limited to the particular combination of features described above, but also encompasses other arrangements formed by any combination of the above features or their equivalents without departing from the spirit of the invention. For example, the above features may be replaced with (but not limited to) features having similar functions disclosed in the present application.

Claims (9)

1. A method for determining dependency relationships among pod libraries is characterized by comprising the following steps:
acquiring the dependency relationship of all published pod libraries under the shell engineering;
determining a pod library entering a development state in the issued pod library, and acquiring a description file of the pod library entering the development state;
according to the description file of the pod entering the development state, finding out the dependency relationship of the pod entering the development state in the dependency relationship;
wherein the determining a pod library entering a development state in the published pod library comprises: analyzing the description file of the published pod library, obtaining the dependency mode description of the published pod library, and determining the pod library entering a development state in the published pod library according to the dependency mode description; and if the dependency mode is described as a version dependency mode or a remote dependency mode, the corresponding published pod is a pod which does not enter a development state.
2. The method of claim 1, wherein obtaining dependencies for all published pod libraries under shell engineering comprises:
acquiring a description file of a published pod library under the shell project;
and analyzing the description file of the published pod library to establish the dependency relationship of all the published pod libraries.
3. The method of claim 2, wherein the parsing the description file of the published pod to establish the dependency relationship of all published pod libraries comprises:
for each published pod, extracting the name of the corresponding pod and the name of the published pod directly dependent on the corresponding pod from the description file of each published pod;
storing the names of all the published pod libraries and the names of the published pod libraries on which the published pod libraries directly depend in a key-value pair manner so as to establish the dependency relationship of all the published pod libraries.
4. The method according to claim 3, wherein storing names of all published pod libraries and names of published pod libraries on which they directly depend in a key-value pair manner to establish dependencies of all published pod libraries comprises:
for each published pod, its name serves as the key of the key-value pair, and the name of the published pod on which it directly depends serves as the value;
and establishing the dependency relationship of all the issued pod libraries according to the keys and the values corresponding to all the issued pod libraries.
5. The method of claim 4, wherein storing names of all published pod libraries and names of published pod libraries on which they directly depend in a key-value pair manner to establish dependencies of all published pod libraries further comprises:
for each published pod, the name of the published pod on which it indirectly depends is determined and added to the value.
6. The method according to claim 1, wherein after determining the pod library entering the development state in the published pod libraries and obtaining the description file of the pod library entering the development state, the method comprises: acquiring the name of the pod entering the development state from the description file of the pod entering the development state, and adding the name to the built pod entering the development state;
the finding out the dependency relationship of the pod entering the development state in the dependency relationship according to the description file of the pod entering the development state includes: and finding out the dependency relationship of the pod entering the development state in the dependency relationship according to the name of the pod entering the development state recorded in the pod list of the development state.
7. An apparatus for determining dependency relationships between pod libraries, comprising:
the dependency relationship acquisition unit is used for acquiring the dependency relationship of all issued pod libraries under the shell engineering;
a pod library determining unit, configured to determine a pod library entering a development state in the published pod libraries, and acquire a description file of the pod library entering the development state;
the dependency relationship screening unit is used for searching the dependency relationship of the pod library entering the development state in the dependency relationship according to the description file of the pod library entering the development state;
the pod library determining unit is specifically configured to parse the description file of the published pod library, obtain a dependency pattern description of the published pod library from the description file, and determine a pod library entering a development state in the published pod library according to the dependency pattern description; if the dependency mode is described as a path dependency mode, the corresponding published pod is a pod entering a development state; and if the dependency mode is described as a version dependency mode or a remote dependency mode, the corresponding published pod is a pod which does not enter a development state.
8. A computer storage medium having a computer-executable program stored thereon, the computer-executable program being executed to implement the method of any one of claims 1-6.
9. An electronic device, comprising a memory for storing a computer-executable program and a processor for executing the computer-executable program to perform the method of any of claims 1-6.
CN202111383068.9A 2021-11-22 2021-11-22 Method and device for determining dependency relationship between pod libraries and electronic equipment Active CN113821486B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202111383068.9A CN113821486B (en) 2021-11-22 2021-11-22 Method and device for determining dependency relationship between pod libraries and electronic equipment
CN202210080477.XA CN114936185A (en) 2021-11-22 2021-11-22 Method and device for establishing dependency relationship between pod libraries and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111383068.9A CN113821486B (en) 2021-11-22 2021-11-22 Method and device for determining dependency relationship between pod libraries and electronic equipment

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202210080477.XA Division CN114936185A (en) 2021-11-22 2021-11-22 Method and device for establishing dependency relationship between pod libraries and electronic equipment

Publications (2)

Publication Number Publication Date
CN113821486A CN113821486A (en) 2021-12-21
CN113821486B true CN113821486B (en) 2022-02-22

Family

ID=78917991

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202210080477.XA Pending CN114936185A (en) 2021-11-22 2021-11-22 Method and device for establishing dependency relationship between pod libraries and electronic equipment
CN202111383068.9A Active CN113821486B (en) 2021-11-22 2021-11-22 Method and device for determining dependency relationship between pod libraries and electronic equipment

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202210080477.XA Pending CN114936185A (en) 2021-11-22 2021-11-22 Method and device for establishing dependency relationship between pod libraries and electronic equipment

Country Status (1)

Country Link
CN (2) CN114936185A (en)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180210713A1 (en) * 2017-01-24 2018-07-26 Salesforce.Com, Inc. Methods and systems for using cross repositories
CN110737437A (en) * 2018-07-20 2020-01-31 北京君正集成电路股份有限公司 compiling method and device based on code integration
CN109189729A (en) * 2018-09-03 2019-01-11 五八有限公司 Lookup method, device, equipment and the storage medium of each inter-module dependence
CN110162387A (en) * 2019-04-09 2019-08-23 口口相传(北京)网络技术有限公司 Thread scheduling method, device, computer equipment and computer readable storage medium
CN113495728A (en) * 2020-03-18 2021-10-12 腾讯科技(深圳)有限公司 Dependency relationship determination method, dependency relationship determination device, electronic equipment and medium
CN112486689A (en) * 2020-12-10 2021-03-12 苏州浪潮智能科技有限公司 Resource management platform resource recovery method, device, equipment and readable medium

Also Published As

Publication number Publication date
CN113821486A (en) 2021-12-21
CN114936185A (en) 2022-08-23

Similar Documents

Publication Publication Date Title
US11481200B1 (en) Checking source code validity at time of code update
CN112104709B (en) Intelligent contract processing method, device, medium and electronic equipment
CN112394942B (en) Distributed software development compiling method and software development platform based on cloud computing
CN107783766B (en) Method and device for cleaning files of application program
CN111967017B (en) Method, device, terminal equipment and storage medium for generating dependency relationship
CN111061643B (en) SDK cluster compatibility detection method and device, electronic equipment and storage medium
CN109815141B (en) Test method and device
CN110737437A (en) compiling method and device based on code integration
CN109947431B (en) Code generation method, device, equipment and storage medium
CN110659210A (en) Information acquisition method and device, electronic equipment and storage medium
CN113835713B (en) Source code packet downloading method, device, computer equipment and storage medium
CN114003269A (en) Component processing method and device, electronic equipment and storage medium
CN113760306A (en) Method and device for installing software, electronic equipment and storage medium
CN113821486B (en) Method and device for determining dependency relationship between pod libraries and electronic equipment
CN115951916A (en) Component processing method and device, electronic equipment and storage medium
CN113190235B (en) Code analysis method and device, electronic terminal and storage medium
US11947966B2 (en) Identifying computer instructions enclosed by macros and conflicting macros at build time
CN115543967A (en) Data migration method and device, electronic equipment and computer readable medium
US11861389B2 (en) Compiling a specified instruction from a first virtual application to a second virtual application
CN114090514A (en) Log retrieval method and device for distributed system
CN113760291A (en) Log output method and device
CN110297639B (en) Method and apparatus for detecting code
CN110737429A (en) modular compiling method and device utilizing Makefile self-dependent relationship
US20120150898A1 (en) Dynamic Collection Of System Support Files In A Data Processing Environment
CN116774988B (en) Method and device for releasing frame package mode symbol dependence

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