CN116755795A - Plug-in management method, device, medium and electronic equipment - Google Patents

Plug-in management method, device, medium and electronic equipment Download PDF

Info

Publication number
CN116755795A
CN116755795A CN202310714264.2A CN202310714264A CN116755795A CN 116755795 A CN116755795 A CN 116755795A CN 202310714264 A CN202310714264 A CN 202310714264A CN 116755795 A CN116755795 A CN 116755795A
Authority
CN
China
Prior art keywords
plug
party
package
storage path
host
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310714264.2A
Other languages
Chinese (zh)
Inventor
杜立博
叶桐
柳泽镕
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Douyin Vision Co Ltd
Original Assignee
Douyin Vision 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 Douyin Vision Co Ltd filed Critical Douyin Vision Co Ltd
Priority to CN202310714264.2A priority Critical patent/CN116755795A/en
Publication of CN116755795A publication Critical patent/CN116755795A/en
Pending legal-status Critical Current

Links

Abstract

The disclosure relates to a plug-in management method, a device, a medium and electronic equipment, belongs to the technical field of computers, and can solve the problem of plug-in loading failure caused by third party dependence package inspection in related technologies. A method of plug-in management, comprising: modifying a storage path of a third-party dependent package of a plug-in from a proxy server to a first storage path, wherein the proxy server stores a third-party dependent package of a host; compiling the plug-in based on a third party dependency package in the first storage path; and loading the plug-in the host based on the compiling result.

Description

Plug-in management method, device, medium and electronic equipment
Technical Field
The disclosure relates to the technical field of computers, and in particular relates to a plug-in management method, a device, a medium and electronic equipment.
Background
In the plug-in implementation mechanism of the Go language, when the host loads the plug-ins, if the paths of the third-party dependent packages in the host and the third-party dependent packages in the plug-ins are the same, then the third-party dependent packages under the same paths are checked. If it is checked that the versions of the third party dependent packages are inconsistent or the implementation of the third party dependent packages is different, errors may be reported during loading of the plug-in by the host, resulting in failure of loading of the plug-in by the host.
Disclosure of Invention
This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the detailed description. This summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.
In a first aspect, the present disclosure provides a plug-in management method, including: modifying a storage path of a third-party dependent package of a plug-in from a proxy server to a first storage path, wherein the proxy server stores a third-party dependent package of a host; compiling the plug-in based on a third party dependency package in the first storage path; and loading the plug-in the host based on the compiling result.
In a second aspect, the present disclosure provides a card managing apparatus, including: the system comprises a modification module, a first storage path and a second storage path, wherein the modification module is used for modifying the storage path of the third-party dependence package of the plug-in from a proxy server to the first storage path, and the proxy server stores the third-party dependence package of the host; the compiling module is used for compiling the plug-in based on a third party dependency package in the first storage path; and the loading module is used for loading the plug-in the host based on the compiling result.
In a third aspect, the present disclosure provides a computer readable medium having stored thereon a computer program which, when executed by a processing device, implements the steps of the method of any of the first aspects.
In a fourth aspect, the present disclosure provides an electronic device comprising: a storage device having a computer program stored thereon; processing means for executing said computer program in said storage means to carry out the steps of the method according to any one of the first aspects.
By adopting the technical scheme, the storage path of the third-party dependent package of the plugin can be modified from the proxy server to the first storage path, wherein the proxy server stores the third-party dependent package of the host, then the plugin is compiled based on the third-party dependent package in the first storage path, and the plugin is loaded in the host based on the compiling result, so that even if a plugin developer and a host service developer respectively use different versions of the same third-party dependent package, the plugin developer and the host service developer can be considered as different third-party dependent packages when the third-party dependent packages are checked, the successful loading of the plugin is ensured, the problem of plugin loading failure caused by the third-party dependent package checking in the related art is solved, and the problem of requiring that the third-party dependent package of the host and the plugin is consistent in strength in the related art is solved. In addition, through the path modification, on the premise that the plug-in can be loaded and operated according to the expected situation, mutual isolation between the third party dependent package of the plug-in and the third party dependent package of the host is realized, and the plug-in and the third party dependent package cannot interfere with each other during operation. Further, by means of the path modification, independent upgrading of the third-party dependence package of the plug-in and the third-party dependence package of the host can be achieved, and availability of plug-in functions is greatly improved. In addition, since only the storage path of the third party-dependent package of the plug-in is modified, no influence is exerted on the function of the third party-dependent package itself.
Additional features and advantages of the present disclosure will be set forth in the detailed description which follows.
Drawings
The above and other features, advantages, and aspects of embodiments of the present disclosure will become more apparent by reference to the following detailed description when taken in conjunction with the accompanying drawings. The same or similar reference numbers will be used throughout the drawings to refer to the same or like elements. It should be understood that the figures are schematic and that elements and components are not necessarily drawn to scale. In the drawings:
fig. 1 is a flowchart of a plug-in management method according to an embodiment of the present disclosure.
FIG. 2 is a schematic diagram of a relationship of a host to a third party dependent package of plug-ins according to an embodiment of the present disclosure.
Fig. 3 is yet another flow chart of a plug-in management method according to an embodiment of the present disclosure.
Fig. 4 is yet another flow chart of a plug-in management method according to an embodiment of the present disclosure.
Fig. 5 is a schematic block diagram of a card management apparatus according to one embodiment of the present disclosure.
Fig. 6 shows a schematic structural diagram of an electronic device suitable for use in implementing embodiments of the present disclosure.
Detailed Description
Embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. While certain embodiments of the present disclosure have been shown in the accompanying drawings, it is to be understood that the present disclosure may be embodied in various forms and should not be construed as limited to the embodiments set forth herein, but are provided to provide a more thorough and complete understanding of the present disclosure. It should be understood that the drawings and embodiments of the present disclosure are for illustration purposes only and are not intended to limit the scope of the present disclosure.
It should be understood that the various steps recited in the method embodiments of the present disclosure may be performed in a different order and/or performed in parallel. Furthermore, method embodiments may include additional steps and/or omit performing the illustrated steps. The scope of the present disclosure is not limited in this respect.
The term "including" and variations thereof as used herein are intended to be open-ended, i.e., including, but not limited to. The term "based on" is based at least in part on. The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments. Related definitions of other terms will be given in the description below.
It should be noted that the terms "first," "second," and the like in this disclosure are merely used to distinguish between different devices, modules, or units and are not used to define an order or interdependence of functions performed by the devices, modules, or units.
It should be noted that references to "one", "a plurality" and "a plurality" in this disclosure are intended to be illustrative rather than limiting, and those of ordinary skill in the art will appreciate that "one or more" is intended to be understood as "one or more" unless the context clearly indicates otherwise.
The names of messages or information interacted between the various devices in the embodiments of the present disclosure are for illustrative purposes only and are not intended to limit the scope of such messages or information.
It will be appreciated that prior to using the technical solutions disclosed in the embodiments of the present disclosure, the user should be informed and authorized of the type, usage range, usage scenario, etc. of the personal information related to the present disclosure in an appropriate manner according to the relevant legal regulations.
For example, in response to receiving an active request from a user, a prompt is sent to the user to explicitly prompt the user that the operation it is requesting to perform will require personal information to be obtained and used with the user. Thus, the user can autonomously select whether to provide personal information to software or hardware such as an electronic device, an application program, a server or a storage medium for executing the operation of the technical scheme of the present disclosure according to the prompt information.
As an alternative but non-limiting implementation, in response to receiving an active request from a user, the manner in which the prompt information is sent to the user may be, for example, a popup, in which the prompt information may be presented in a text manner. In addition, a selection control for the user to select to provide personal information to the electronic device in a 'consent' or 'disagreement' manner can be carried in the popup window.
It will be appreciated that the above-described notification and user authorization process is merely illustrative and not limiting of the implementations of the present disclosure, and that other ways of satisfying relevant legal regulations may be applied to the implementations of the present disclosure.
Meanwhile, it can be understood that the data (including but not limited to the data itself, the acquisition or the use of the data) related to the technical scheme should conform to the requirements of the corresponding laws and regulations and related regulations.
In the plug-in implementation mechanism of the Go language, when the host loads the plug-ins, if the paths of the third-party dependent packages in the host and the third-party dependent packages in the plug-ins are the same, then the third-party dependent packages under the same paths are checked. If it is checked that the versions of the third party dependent packages are inconsistent or the implementation of the third party dependent packages is different, errors may be reported during loading of the plug-in by the host, resulting in failure of loading of the plug-in by the host. Such a check can ensure that the implementation of third party dependent packages of the same path are consistent throughout the run, so that unexpected behavior in the call does not occur during plug-in operation due to the plug-in dependent third party dependent packages not being consistent with the host dependent third party dependent packages.
However, the third party dependency package inspection brings new problems while ensuring that the plug-in can be loaded and run as expected, namely: (1) If the host and the plug-in are developed by different personnel, in the case that the third party dependent packages are more, it is difficult to ensure that all the third party dependent packages are of the same version; (2) If one of the host developer and the plug-in developer wants to upgrade the third party dependency package, the other party must be informed to upgrade the third party dependency package together to ensure that the plug-in is loaded successfully, which brings great limitation to the use scenario of the plug-in; (3) If the third party relies on the package itself to have global variables, then the host and plug-in run-time may have problems interfering with each other.
Fig. 1 is a flow chart of a plug-in management method according to one embodiment of the present disclosure. The plug-in management method can be applied to a programming language such as go language. As shown in fig. 1, the card managing method includes the following steps S11 to S13.
In step S11, the storage path of the third party-dependent package of the plug-in is modified from the proxy server, in which the hosted third party-dependent package is stored, to the first storage path.
The proxy server herein refers to a package-dependent proxy server of a programming language such as go language. Taking go language as an example, the third party dependent package of the host and the third party dependent package of the plug-in are originally stored in the proxy server.
In some embodiments, modifying the storage path of the third party dependent package of the plug-in from the proxy server to the first storage path may be accomplished as follows. First, a third party dependent package of the plug-in is obtained from the proxy server, for example, the third party dependent package of the plug-in is downloaded from the proxy server; the third party dependent package of the plug-in is then stored into the first storage path. The first storage path may be a local code repository for the plug-in.
In step S12, the plug-in is compiled based on the third party dependency package in the first storage path.
That is, when compiling the plug-in, the compiling is based on the third party dependency package code in the first storage path. Taking a go language as an example, in the related art, when compiling a plug-in, a host and the plug-in are compiled based on a third-party dependent package code in a go module cache, and in an embodiment of the present disclosure, the plug-in is compiled based on a third-party dependent package code in a first storage path, and the host is compiled based on a third-party dependent package code in the go module cache.
In step S13, the plug-in is loaded in the host based on the compiling result.
By adopting the technical scheme, the storage path of the third-party dependent package of the plugin can be modified from the proxy server to the first storage path, wherein the proxy server stores the third-party dependent package of the host, then the plugin is compiled based on the third-party dependent package in the first storage path, and the plugin is loaded in the host based on the compiling result, so that even if a plugin developer and a host service developer respectively use different versions of the same third-party dependent package, the plugin developer and the host service developer can be considered as different third-party dependent packages when the third-party dependent packages are checked, the successful loading of the plugin is ensured, the problem of plugin loading failure caused by the third-party dependent package checking in the related art is solved, and the problem of requiring that the third-party dependent package of the host and the plugin is consistent in strength in the related art is solved. In addition, through the path modification, on the premise that the plug-in can be loaded and operated according to the expected situation, mutual isolation between the third party dependent package of the plug-in and the third party dependent package of the host is realized, and the plug-in and the third party dependent package cannot interfere with each other during operation. Further, by means of the path modification, independent upgrading of the third-party dependence package of the plug-in and the third-party dependence package of the host can be achieved, and availability of plug-in functions is greatly improved. In addition, since only the storage path of the third party-dependent package of the plug-in is modified, no influence is exerted on the function of the third party-dependent package itself.
In some embodiments, the plug-in management method according to an embodiment of the present disclosure may further include: the third party dependent package of the plug-in is distinguished from the third party dependent package of the host by renaming the third party dependent package in the first storage path. As shown in fig. 2, which illustrates a schematic diagram of a third party dependency package of a host and a plug-in according to an embodiment of the present disclosure, in which an intersection portion of the host and the plug-in represents code provided by a compiling language (e.g., go language) that compiles the host and the plug-in during runtime, and is shared by the host and the plug-in, the intersection portion in fig. 2 may include an os library or the like, for example. In addition, logs and pack are examples of third party dependent packages in fig. 2, and a prefix (in fig. 2, the prefix is "t_plug_") is added to the third party dependent package in the plug-in, so as to distinguish the third party dependent package from the third party dependent package in the host. By renaming the third-party dependency package in the first storage path, complete isolation between the third-party dependency package of the host and the third-party dependency package of the plug-in can be achieved, and independent upgrade of any party can not influence loading of the plug-in, namely, even if the third-party dependency package of the host is independently upgraded or the third-party dependency package of the plug-in is independently upgraded, the host can still successfully load the plug-in.
Further, since the present disclosure modifies the storage path of the third party dependency package of the plugin, in this case, if an object needs to be transferred across the boundary between the host and the plugin, according to the related art, since the storage path of the third party dependency package of the plugin is reconstructed, all other types of objects of the compiled language except for the objects of the native basic type of the compiled language in which the host and the plugin are compiled cannot be directly transferred by means of object transfer, but can be transferred only by means of interface conversion or by means of serialization, and both the interface conversion and serialization modes greatly affect the call performance. To solve this problem, the present disclosure provides a plug-in management method shown in fig. 3. As shown in fig. 3, the plug-in management method includes steps S31 to S33.
In step S31, a first request object is received from a hosted service packet.
The first request object is an object other than a native object of a compiled language (e.g., go language) that compiles the host and plug-ins.
In step S32, the first request object is converted into a second request object for the in-plug business package.
In some embodiments, the request object may be converted to a second request object for the in-plug business package based on the renaming of the third party dependency package of the plug in the first storage path. For example, if the third party dependency package of the plugin in the first storage path is renamed by adding a prefix, the conversion from the first request object to the second request object of the service package in the plugin can be achieved by using the prefix adopted when renaming the third party dependency package of the plugin in the first storage path as the prefix of the first request object.
In step S33, the second request object is passed to the plug-in.
Taking the example shown in fig. 4 as an example, the request object a.addreq of the service packet packet_a in the host is converted into t_plug_a.addreq after the conversion, and after the conversion, it can be known that the request object a.addreq of the service packet packet_a in the host needs to be transferred to the service packet t_plug_packet_a in the plug-in.
By adopting the technical scheme, the first request object of the business packet from the host is firstly converted into the second request object of the business packet in the plug-in unit, and then the second request object is transmitted to the plug-in unit, so that the request data can be ensured to be correctly transmitted to the interior of the plug-in unit, and additional overheads such as serialization and the like can not be introduced.
Fig. 5 is a schematic block diagram of a card management apparatus according to one embodiment of the present disclosure. As shown in fig. 5, the card managing apparatus includes: a modifying module 51, configured to modify a storage path of a third party dependent package of the plug-in from a proxy server to a first storage path, where the proxy server stores a hosted third party dependent package; a compiling module 52 for compiling the plug-in based on the third party dependency package in the first storage path; and a loading module 53, configured to load the plug-in the host based on the compiling result.
By adopting the technical scheme, the storage path of the third-party dependent package of the plugin can be modified from the proxy server to the first storage path, wherein the proxy server stores the third-party dependent package of the host, then the plugin is compiled based on the third-party dependent package in the first storage path, and the plugin is loaded in the host based on the compiling result, so that even if a plugin developer and a host service developer respectively use different versions of the same third-party dependent package, the plugin developer and the host service developer can be considered as different third-party dependent packages when the third-party dependent packages are checked, the successful loading of the plugin is ensured, the problem of plugin loading failure caused by the third-party dependent package checking in the related art is solved, and the problem of requiring that the third-party dependent package of the host and the plugin is consistent in strength in the related art is solved. In addition, through the path modification, on the premise that the plug-in can be loaded and operated according to the expected situation, mutual isolation between the third party dependent package of the plug-in and the third party dependent package of the host is realized, and the plug-in and the third party dependent package cannot interfere with each other during operation. Further, by means of the path modification, independent upgrading of the third-party dependence package of the plug-in and the third-party dependence package of the host can be achieved, and availability of plug-in functions is greatly improved. In addition, since only the storage path of the third party-dependent package of the plug-in is modified, no influence is exerted on the function of the third party-dependent package itself.
Optionally, the modifying module 51 modifies the storage path of the third party dependent package of the plugin from the proxy server to the first storage path, including: obtaining a third party dependent package of the plug-in from the proxy server; and storing the third-party dependent package of the plug-in into the first storage path.
Optionally, the modification module 51 is further configured to: the third party dependent package of the plug-in and the third party dependent package of the host are distinguished by renaming the third party dependent package in the first storage path.
Optionally, the first storage path is a local code repository of the plug-in.
Optionally, the plug-in management device further includes a conversion module, configured to: receiving a first request object from the hosted service packet; converting the first request object into a second request object for the business package in the plug-in unit; and transmitting the second request object to the plug-in.
Optionally, the conversion module converts the request object into a second request object for the in-plug service package, including: and converting the request object into a second request object for the business package in the plug-in based on the renaming mode of the third-party dependent package of the plug-in the first storage path.
Optionally, the first request object is an object other than a native object of a compiling language that compiles the host and the plug-in.
The present disclosure also provides a computer readable medium having stored thereon a computer program which when executed by a processing device performs the steps of any of the methods of the present disclosure.
The present disclosure also provides an electronic device, including: a storage device having a computer program stored thereon; processing means for executing the computer program in the storage means to carry out the steps of any of the methods of the present disclosure.
Referring now to fig. 6, a schematic diagram of an electronic device 600 suitable for use in implementing embodiments of the present disclosure is shown. The terminal devices in the embodiments of the present disclosure may include, but are not limited to, mobile terminals such as mobile phones, notebook computers, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablet computers), PMPs (portable multimedia players), in-vehicle terminals (e.g., in-vehicle navigation terminals), and the like, and stationary terminals such as digital TVs, desktop computers, and the like. The electronic device shown in fig. 6 is merely an example and should not be construed to limit the functionality and scope of use of the disclosed embodiments.
As shown in fig. 6, the electronic device 600 may include a processing means (e.g., a central processing unit, a graphics processor, etc.) 601, which may perform various appropriate actions and processes according to a program stored in a Read Only Memory (ROM) 602 or a program loaded from a storage means 608 into a Random Access Memory (RAM) 603. In the RAM 603, various programs and data required for the operation of the electronic apparatus 600 are also stored. The processing device 601, the ROM 602, and the RAM 603 are connected to each other through a bus 604. An input/output (I/O) interface 605 is also connected to bus 604.
In general, the following devices may be connected to the I/O interface 605: input devices 606 including, for example, a touch screen, touchpad, keyboard, mouse, camera, microphone, accelerometer, gyroscope, and the like; an output device 607 including, for example, a Liquid Crystal Display (LCD), a speaker, a vibrator, and the like; storage 608 including, for example, magnetic tape, hard disk, etc.; and a communication device 609. The communication means 609 may allow the electronic device 600 to communicate with other devices wirelessly or by wire to exchange data. While fig. 6 shows an electronic device 600 having various means, it is to be understood that not all of the illustrated means are required to be implemented or provided. More or fewer devices may be implemented or provided instead.
In particular, according to embodiments of the present disclosure, the processes described above with reference to 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 non-transitory computer readable medium, the computer program comprising program code for performing the method shown in the flow chart. In such an embodiment, the computer program may be downloaded and installed from a network via communication means 609, or from storage means 608, or from ROM 602. The above-described functions defined in the methods of the embodiments of the present disclosure are performed when the computer program is executed by the processing device 601.
It should be noted that the computer readable medium described in the present disclosure may be a computer readable signal medium or a computer readable storage medium, or any combination of the two. The computer readable storage medium can be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or a combination of any 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 context of this disclosure, 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 the present disclosure, however, the computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, with the computer-readable program code embodied therein. Such a propagated data signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination of the foregoing. 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: electrical wires, fiber optic cables, RF (radio frequency), and the like, or any suitable combination of the foregoing.
In some implementations, the clients, servers may communicate using any currently known or future developed network protocol, such as HTTP (HyperText Transfer Protocol ), and may be interconnected with 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"), the internet (e.g., the internet), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks), as well as any currently known or future developed networks.
The computer readable medium may be contained in the electronic device; or may exist alone without being incorporated into the electronic device.
The computer readable medium carries one or more programs which, when executed by the electronic device, cause the electronic device to: modifying a storage path of a third-party dependent package of a plug-in from a proxy server to a first storage path, wherein the proxy server stores a third-party dependent package of a host; compiling the plug-in based on a third party dependency package in the first storage path; and loading the plug-in the host based on the compiling result.
Computer program code for carrying out operations of the present disclosure may be written in one or more programming languages, including, but not limited to, an object oriented programming language such as Java, smalltalk, C ++ 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 kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or may be connected to an external computer (for example, through the Internet using an Internet service provider).
The flowcharts 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 disclosure. 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 modules described in the embodiments of the present disclosure may be implemented in software or hardware. The name of a module is not limited to the module itself in some cases, and for example, a loading module may also be described as "a module that loads the plug-in the host based on the compiling result".
The functions described above herein may be performed, at least in part, by one or more hardware logic components. For example, without limitation, exemplary types of hardware logic components that may be used include: a Field Programmable Gate Array (FPGA), an Application Specific Integrated Circuit (ASIC), an Application Specific Standard Product (ASSP), a system on a chip (SOC), a Complex Programmable Logic Device (CPLD), and the like.
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.
According to one or more embodiments of the present disclosure, example 1 provides a plug-in management method, including: modifying a storage path of a third-party dependent package of a plug-in from a proxy server to a first storage path, wherein the proxy server stores a third-party dependent package of a host; compiling the plug-in based on a third party dependency package in the first storage path; and loading the plug-in the host based on the compiling result.
According to one or more embodiments of the present disclosure, example 2 provides the method of example 1, wherein modifying the storage path of the third party-dependent package of the plug-in from the proxy server to the first storage path includes: obtaining a third party dependent package of the plug-in from the proxy server; and storing the third-party dependent package of the plug-in into the first storage path.
According to one or more embodiments of the present disclosure, example 3 provides the method of example 2, wherein the method further comprises: the third party dependent package of the plug-in and the third party dependent package of the host are distinguished by renaming the third party dependent package in the first storage path.
In accordance with one or more embodiments of the present disclosure, example 4 provides the method of example 1, wherein the first storage path is a local code repository of the plug-in.
According to one or more embodiments of the present disclosure, example 5 provides the method of any one of examples 1 to 4, wherein the method further comprises: receiving a first request object from the hosted service packet; converting the first request object into a second request object for the business package in the plug-in unit; and transmitting the second request object to the plug-in.
In accordance with one or more embodiments of the present disclosure, example 6 provides the method of example 5, wherein the converting the request object into a second request object for the in-plug business package comprises: and converting the request object into a second request object for the business package in the plug-in based on the renaming mode of the third-party dependent package of the plug-in the first storage path.
In accordance with one or more embodiments of the present disclosure, example 7 provides the method of example 5, wherein the first request object is an object other than a native object of a compilation language that compiles the host and the plug-in.
Example 8 provides a plug-in management apparatus according to one or more embodiments of the present disclosure, comprising: the system comprises a modification module, a first storage path and a second storage path, wherein the modification module is used for modifying the storage path of the third-party dependence package of the plug-in from a proxy server to the first storage path, and the proxy server stores the third-party dependence package of the host; the compiling module is used for compiling the plug-in based on a third party dependency package in the first storage path; and the loading module is used for loading the plug-in the host based on the compiling result.
According to one or more embodiments of the present disclosure, example 9 provides a computer-readable medium having stored thereon a computer program which, when executed by a processing device, implements the steps of the method of any of examples 1-7.
In accordance with one or more embodiments of the present disclosure, example 10 provides an electronic device, comprising: a storage device having a computer program stored thereon; processing means for executing the computer program in the storage means to implement the steps of the method of any one of examples 1-7.
The foregoing description is only of the preferred embodiments of the present disclosure and description of the principles of the technology being employed. It will be appreciated by persons skilled in the art that the scope of the disclosure referred to in this disclosure is not limited to the specific combinations of features described above, but also covers other embodiments which may be formed by any combination of features described above or equivalents thereof without departing from the spirit of the disclosure. Such as those described above, are mutually substituted with the technical features having similar functions disclosed in the present disclosure (but not limited thereto).
Moreover, although operations are depicted in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order. In certain circumstances, multitasking and parallel processing may be advantageous. Likewise, while several specific implementation details are included in the above discussion, these should not be construed as limiting the scope of the present disclosure. Certain features that are described in the context of separate embodiments can also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment can also be implemented in multiple embodiments separately or in any suitable subcombination.
Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are example forms of implementing the claims. The specific manner in which the various modules perform the operations in the apparatus of the above embodiments have been described in detail in connection with the embodiments of the method, and will not be described in detail herein.

Claims (10)

1. A method for managing a card, comprising:
modifying a storage path of a third-party dependent package of a plug-in from a proxy server to a first storage path, wherein the proxy server stores a third-party dependent package of a host;
compiling the plug-in based on a third party dependency package in the first storage path;
and loading the plug-in the host based on the compiling result.
2. The method of claim 1, wherein modifying the storage path of the third party-dependent package of the plug-in from the proxy server to the first storage path comprises:
obtaining a third party dependent package of the plug-in from the proxy server;
and storing the third-party dependent package of the plug-in into the first storage path.
3. The method according to claim 2, wherein the method further comprises:
the third party dependent package of the plug-in and the third party dependent package of the host are distinguished by renaming the third party dependent package in the first storage path.
4. The method of claim 1, wherein the first storage path is a local code repository of the plug-in.
5. The method according to any one of claims 1 to 4, further comprising:
receiving a first request object from the hosted service packet;
converting the first request object into a second request object for the business package in the plug-in unit;
and transmitting the second request object to the plug-in.
6. The method of claim 5, wherein converting the request object into a second request object for the in-plug business package comprises:
and converting the request object into a second request object for the business package in the plug-in based on the renaming mode of the third-party dependent package of the plug-in the first storage path.
7. The method of claim 5, wherein the first request object is an object other than a native object of a compilation language that compiles the host and the plug-in.
8. A card managing apparatus, comprising:
the system comprises a modification module, a first storage path and a second storage path, wherein the modification module is used for modifying the storage path of the third-party dependence package of the plug-in from a proxy server to the first storage path, and the proxy server stores the third-party dependence package of the host;
the compiling module is used for compiling the plug-in based on a third party dependency package in the first storage path;
and the loading module is used for loading the plug-in the host based on the compiling result.
9. A computer readable medium on which a computer program is stored, characterized in that the program, when being executed by a processing device, carries out the steps of the method according to any one of claims 1-7.
10. An electronic device, comprising:
a storage device having a computer program stored thereon;
processing means for executing said computer program in said storage means to carry out the steps of the method according to any one of claims 1-7.
CN202310714264.2A 2023-06-15 2023-06-15 Plug-in management method, device, medium and electronic equipment Pending CN116755795A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310714264.2A CN116755795A (en) 2023-06-15 2023-06-15 Plug-in management method, device, medium and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310714264.2A CN116755795A (en) 2023-06-15 2023-06-15 Plug-in management method, device, medium and electronic equipment

Publications (1)

Publication Number Publication Date
CN116755795A true CN116755795A (en) 2023-09-15

Family

ID=87956618

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310714264.2A Pending CN116755795A (en) 2023-06-15 2023-06-15 Plug-in management method, device, medium and electronic equipment

Country Status (1)

Country Link
CN (1) CN116755795A (en)

Similar Documents

Publication Publication Date Title
CN110851139B (en) Method and device for checking codes and electronic equipment
CN111367516B (en) Application interface generation method and device and electronic equipment
CN110750545B (en) Dynamic library heat updating method, device, medium and equipment
CN111309375B (en) Method, device, medium and electronic equipment for generating remote procedure call toolkit
CN111400068B (en) Interface control method and device, readable medium and electronic equipment
CN111309304B (en) Method, device, medium and electronic equipment for generating IDL file
CN114595065A (en) Data acquisition method and device, storage medium and electronic equipment
US20240095022A1 (en) Hotfix method, apparatus, device and storage medium
CN113407165B (en) SDK generation and self-upgrade method, device, readable medium and equipment
CN111338666A (en) Method, device, medium and electronic equipment for realizing application program upgrading
CN111506904B (en) Method and device for online bug repair
CN112527302B (en) Error detection method and device, terminal and storage medium
CN116755795A (en) Plug-in management method, device, medium and electronic equipment
CN111796865B (en) Byte code file modification method, device, terminal equipment and medium
CN113391860B (en) Service request processing method and device, electronic equipment and computer storage medium
CN111258786B (en) Decoupling method, device, terminal and storage medium in layered architecture
CN110764995B (en) Method, device, medium and electronic equipment for detecting file access abnormality
CN111625326A (en) Task pipeline execution method and device and electronic equipment
CN116755796A (en) Plug-in management method, device, medium and electronic equipment
CN111796802B (en) Function package generation method and device and electronic equipment
CN116594630A (en) File generation method, device, medium and electronic equipment
CN111782410B (en) Lock jam monitoring method and device, electronic equipment and computer readable medium
CN117093284A (en) Plug-in calling method, device, medium and electronic equipment
CN113448550B (en) Method and device for realizing collection management of classes, electronic equipment and computer medium
CN116263824A (en) Resource access method and device, storage medium and electronic equipment

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