CN114610385B - 一种运行环境适配系统及方法 - Google Patents

一种运行环境适配系统及方法 Download PDF

Info

Publication number
CN114610385B
CN114610385B CN202210256637.1A CN202210256637A CN114610385B CN 114610385 B CN114610385 B CN 114610385B CN 202210256637 A CN202210256637 A CN 202210256637A CN 114610385 B CN114610385 B CN 114610385B
Authority
CN
China
Prior art keywords
file
code
configuration library
library
adaptation
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
CN202210256637.1A
Other languages
English (en)
Other versions
CN114610385A (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.)
Shandong Fosung Science And Technology Co ltd
Original Assignee
Shandong Fosung Science And Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shandong Fosung Science And Technology Co ltd filed Critical Shandong Fosung Science And Technology Co ltd
Priority to CN202210256637.1A priority Critical patent/CN114610385B/zh
Publication of CN114610385A publication Critical patent/CN114610385A/zh
Application granted granted Critical
Publication of CN114610385B publication Critical patent/CN114610385B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/76Adapting program code to run in a different environment; Porting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • G06F8/315Object-oriented languages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/36Software reuse
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/74Reverse engineering; Extracting design information from source code
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供一种运行环境适配系统及方法,属于程序开发技术领域,包括:文件解析模块、配置库适配模块、文件适配模块和至少一个配置库;所述配置库内存储至少一个第二代码文件;所述文件解析模块用于解析待适配源代码包,得到至少一个第一代码文件;所述配置库适配模块用于确定所述第一代码文件所应适配的目标配置库;所述文件适配模块用于根据目标运行环境的技术栈,确定所述目标配置库内的作为所述第一代码文件的适配目标的所述第二代码文件。本发明能够容易地生成可在国产化软硬件平台进行运行的代码包,降低应用程序的开发成本。

Description

一种运行环境适配系统及方法
技术领域
本发明属于程序开发技术领域,具体涉及一种运行环境适配系统及方法。
背景技术
随着国家对信息化建设的重视,对信息安全建设的加强,各重要系统要求使用安全可靠的国产系统,其中涉及软件、硬件使用国产化替换。大量原有应用系统需要迁移至国产化进行运行,而由于底层技术支撑的差异,系统无法直接进行迁移,需要对源代码和运行环境进行改造、适配和重构等操作。
解决此类问题的传统办法,是由技术人员对原系统的源代码进行人工迁移,由于迁移前后的技术路线差异大,涉及的技术栈繁杂,技术人员需要投入大量的调试工作,尤其是在操作系统、应用中间件和关系型数据库层面投入大量时间,开发效率低,而且存在复杂度高、可读性差、易出错等诸多问题,进而影响适配成功率和系统的稳定性。
发明内容
针对现有技术的上述不足,本发明提供一种运行环境适配系统及方法,以解决上述技术问题。
第一方面,本发明提供一种运行环境适配系统,包括:文件解析模块、配置库适配模块、文件适配模块和至少一个配置库;所述配置库内存储至少一个第二代码文件;
所述文件解析模块用于解析待适配源代码包,得到至少一个第一代码文件;
所述配置库适配模块用于确定所述第一代码文件所应适配的目标配置库;
所述文件适配模块用于根据目标运行环境的技术栈,确定所述目标配置库内的作为所述第一代码文件的适配目标的所述第二代码文件。
进一步地,所述配置库适配模块包括备选子模块和确定子模块;
所述备选子模块用于根据所述第一代码文件的文件类型确定备选的配置库;
所述确定子模块用于将第一代码文件与所述备选的配置库进行适配,在适配成功的情况下,确定该备选的配置库为目标配置库。
进一步地,所述配置库包括SQL配置库、依赖库和组件库。
进一步地,还包括文件划分模块,所述文件划分模块用于按照文件类型将第一代码文件分类为代码片段、组件文件和依赖文件;
所述确定子模块还用于以SQL脚本为适配元素将代码片段与所述SQL配置库进行匹配;
所述确定子模块还用于以文件名称为适配元素将组件文件与所述组件库进行匹配;
所述确定子模块还用于以文件名称为适配元素将依赖文件与所述依赖库进行匹配。
进一步地,所述文件适配模块中所述的技术栈包括技术架构、操作系统、中间件和数据库。
进一步地,所述配置库还包括代码配置库;所述系统还包括特征解析模块和语言确定模块;
所述特征解析模块用于解析待适配源代码包,得到代码语言特征;
所述语言确定模块用于将所述代码语言特征与代码配置库中的规则进行逐条匹配,确定所述待适配源代码包的开发语言。
进一步地,还包括:代码包生成模块,用于对确定的所述第二代码文件进行检验,在检验通过的情况下生成所述目标运行环境下新源代码包。
进一步地,还包括:代码包验证模块,用于验证所述新源代码包的文件完整性。
第二方面,本发明提供一种运行环境适配方法,包括:
解析待适配源代码包,得到至少一个第一代码文件;
确定所述第一代码文件所应适配的目标配置库;
根据目标运行环境的技术栈,确定所述目标配置库内的作为所述第一代码文件的适配目标的第二代码文件。
进一步地,所述确定所述第一代码文件所应适配的目标配置库,包括:
按照文件类型将第一代码文件分类为代码片段、组件文件和依赖文件;
以SQL脚本为适配元素将代码片段与SQL配置库进行匹配;
以文件名称为适配元素将组件文件与组件库进行匹配;
以文件名称为适配元素将依赖文件与依赖库进行匹配。
本发明的有益效果在于:
本发明提供的一种运行环境适配系统及方法,通过分析应用程序的源代码文件,并根据适配的目标运行环境的技术栈,在配置库中适配到适用与目标运行环境的新的代码文件,能够容易地生成可在国产化软硬件平台进行运行的代码包,降低应用程序的开发成本。
此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例的系统的示意性框图。
图2是本发明另一个实施例的系统的示意性框图。
图3是本发明另一个实施例的系统的示意性框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
图1是本发明一个实施例的提供一种运行环境适配系统,包括:文件解析模块、配置库适配模块、文件适配模块和至少一个配置库;所述配置库内存储至少一个第二代码文件;所述文件解析模块用于解析待适配源代码包,得到至少一个第一代码文件;所述配置库适配模块用于确定所述第一代码文件所应适配的目标配置库;所述文件适配模块用于根据目标运行环境的技术栈,确定所述目标配置库内的作为所述第一代码文件的适配目标的所述第二代码文件。
在本实施例中,待适配源代码包为要进行适配工作的应用程序的打包可运行的文件包,本实施例以单个文件地形式进行处理。本系统首先通过配置库适配模块适配到目标配置库,然后通过文件适配模块适配该目标库配置库内的第二代码文件,适配到目标运行环境的技术栈的第二代码文件。本实施例将采用“配置库-文件”两级模块,进行目标第二代码文件的适配,提升了匹配准确性和匹配效率。
可选地,作为本发明一个实施例,所述配置库适配模块包括备选子模块和确定子模块;所述备选子模块用于根据所述第一代码文件的文件类型确定备选的配置库;所述确定子模块用于将第一代码文件与所述备选的配置库进行适配,在适配成功的情况下,确定该备选的配置库为目标配置库。
可选地,作为本发明一个实施例,所述配置库包括SQL配置库、依赖库和组件库。
可选地,作为本发明一个实施例,还包括文件划分模块,所述文件划分模块用于按照文件类型将第一代码文件分类为代码片段、组件文件和依赖文件;所述确定子模块还用于以SQL脚本为适配元素将代码片段与所述SQL配置库进行匹配;所述确定子模块还用于以文件名称为适配元素将组件文件与所述组件库进行匹配;所述确定子模块还用于以文件名称为适配元素将依赖文件与所述依赖库进行匹配。
在本实施例中,代码片段的备选的配置库为SQL配置库,依赖文件的备选的配置库为依赖库,组件文件的备选的配置库为组件库。配置库内存储第一层匹配规则,根据第一层匹配规则确定所述第一代码文件的目标配置库;所述SQL配置库的第一层匹配规则为以SQL脚本为适配元素;所述SQL配置库的第一层匹配规则为以文件名称为适配元素;所述SQL配置库的第一层匹配规则为以文件名称为适配元素。配置库内存储第二层匹配规则,所述第二层匹配规则为以技术栈为适配元素。
例如,文件名称为“rely-v3.2.jar”的依赖文件,依赖库的第一层匹配规则为“rely((.|\n)+?).jar”,则判断该文件符合第一层匹配规则,则在该配置库内继续按照文件名称匹配第二层匹配规则。
可选地,作为本发明一个实施例,所述文件适配模块中所述的技术栈包括技术架构、操作系统、中间件和数据库。
值得说明的,通常根据第一代码文件的“文件名称+技术架构”并不能直接匹配到第二代码文件,因为在特殊情况下,两个第二层匹配规则定义是完全相同的,例如Java、C两个第一层匹配规则下,都会包含public关键字的第二层匹配规则。配置库库中的规则可能包含数万条,如果都设计成一级进行逐一匹配,处理量庞大,匹配效率较低。
本实施例提供的SQL配置库包括关系型数据库的规则定义,具体包括Oracle,SQLServer,DB2,Mysql、HighGo、Kingbase、DM、GBase、OceanBase、GaussDB数据库;SQL配置库记录每一种关系型数据库的书写规范和函数,以及各类数据库书写规范和函数之间的匹配对应关系。
本实施例提供的一种SQL配置库如下表所示。
Figure BDA0003548648010000061
Figure BDA0003548648010000071
本实施例提供的依赖库包括服务端运行环境所需要的依赖文件,以及对应国产化技术架构下的对应文件包。
本实施例提供的一种依赖库如下表所示。
Figure BDA0003548648010000072
本实施例的组件库包括服务端运行环境所需要的组件文件,以及对应各类国产化技术架构下的对应组件文件。
本实施例提供的一种组件库如下表所示。
Figure BDA0003548648010000073
Figure BDA0003548648010000081
可选地,作为本发明一个实施例,所述配置库还包括代码配置库;所述系统还包括特征解析模块和语言确定模块;所述特征解析模块用于解析待适配源代码包,得到代码语言特征;所述语言确定模块用于将所述代码语言特征与代码配置库中的规则进行逐条匹配,确定所述待适配源代码包的开发语言。
本实施例提供的代码配置库包括编译型和解释型开发语言的书写规范,具体包括Java、Python、C、C++、C#、PHP、Delphi语言的书写语法;该配置库用于分析模块对用户输入的源代码文件进行分析,判断应用程序的开发语言。
本实施例提供的一种代码配置库如下表所示
编号 层级 匹配规则 语言 匹配率
…… …… …… …… ……
C-J-100 1 .java java 99%
C-J-101 1 .class java 99%
C-J-102 2 ^package java 25%
C-J-103 2 ^import java 5%
C-J-104 2 ^publicclass java 30%
…… …… …… …… ……
可选地,作为本发明一个实施例,对所述第二代码文件进行检验,在检验通过的情况下生成所述目标运行环境下该应用程序的新源代码包。
如图2所示,可选地,作为本发明一个实施例,还包括:代码包生成模块,用于对确定的所述第二代码文件进行检验,在检验通过的情况下生成所述目标运行环境下新源代码包。
如图3所示,可选地,作为本发明一个实施例,还包括:代码包验证模块,用于验证所述新源代码包的文件完整性。
本发明实施例还提供一种运行环境适配方法,包括:解析待适配源代码包,得到至少一个第一代码文件;确定所述第一代码文件所应适配的目标配置库;根据目标运行环境的技术栈,确定所述目标配置库内的作为所述第一代码文件的适配目标的第二代码文件。
可选地,作为本发明一个实施例,所述确定所述第一代码文件所应适配的目标配置库,包括:按照文件类型将第一代码文件分类为代码片段、组件文件和依赖文件;以SQL脚本为适配元素将代码片段与SQL配置库进行匹配;以文件名称为适配元素将组件文件与组件库进行匹配;以文件名称为适配元素将依赖文件与依赖库进行匹配。
为了便于对本发明的理解,下面以本发明一种运行环境适配方法的原理,结合实施例中配置库的内容,对本发明提供的适配方法做进一步的描述。
具体的,所述运行环境适配方法包括:
1、接收用户上传的待适配的应用程序的源代码包。
2、接收用户选择的适配后应用程序再国产化运行环境所运行的技术栈,技术栈包括技术架构、操作系统、中间件、数据库,其中技术架构和操作系统为必选项,中间件和数据库为可选项;在本实施例中,适配后国产化运行环境的数据库型号的代码为“HG”,目标适配的国产化运行环境的技术架构为ARM架构。
3、对用户上传的源代码包进行解析,进行初步检验,分析文件中是否包括可适配的代码,得到第一代码文件,并生成第一代码文件的文件清单,本实施例的文件清单如下表所示。
Figure BDA0003548648010000091
Figure BDA0003548648010000101
4、提取源代码包中的代码语言特征,与代码配置库中的规则进行逐条匹配,确定该源代码包的开发语言;
5、读取S3的文件清单,遍历每个第一代码文件,执行S6至S10;
6、检查第一代码文件的文件类型;
7、该第一代码文件的文件类型为代码片段时,备选配置库为SQL配置库,检查文件A是否包括SQL脚本,将SQL脚本与SQL配置库进行逐条匹配,获取对应适配前后数据库的匹配规则,当有更新时,更新文件内容;
例如:
7.1、第一代码文件A1经S6确定为代码片段,文件名为“code.sql”,文件A1内容如下;
……
select date_diff(aTime-bTime)from table1;
select date_diff(aTime-bTime)from table2;
select date_diff(aTime-bTime)from table3;
……
7.2、第一代码文件A1适配SQL配置库中的“select date_diff((.|\n)+?)”规则;
7.3、因为在S2中适配后目标数据库型号的代码为“HG”,按照SQL配置库中“S-A-100-HG”规则,“code.sql”文件适配后的第二代码文件A2的内容为:
……
select date_part(datepart,aTime-bTime)from table1;
select date_part(datepart,aTime-bTime)from table2;
select date_part(datepart,aTime-bTime)from table3;
……
7.4、把第一代码文件A1的“code.sql”文件名称更新为“code.sql-备份”,将适配后的第二代码文件A2的文件名称更新为“code.sql”。
8、该第一代码文件的文件类型为依赖文件时,备选配置库为依赖库,以该第一代码文件的文件名称为第一匹配指标,按照第一层匹配规则确定目标依赖库,将文件名称、国产化运行环境的技术架构、操作系统中的至少一种作为第二匹配指标,按照第二层匹配规则进行匹配,用匹配到的第二代码文件替换第一代码文件;
例如:
8.1、第一代码文件B1经S6确定为依赖文件,文件名为“rely-v3.2.jar”;
8.2、以“文件名称”为匹配指标,B命中依赖库中第一层匹配规则的“rely((.|\n)+?).jar”规则;
8.3、因为在S2中适配后目标技术架构为ARM架构,按照依赖配置库中第二层匹配规则中的“R-200-V3.2-ARM”规则,将第一代码文件B1替换为第二代码文件B2,其中第二代码文件B2的命名为“rely-v3.2-arm.jar”;
8.4、将第一代码文件B1的“rely-v3.2.jar”更名为“rely-v3.2.jar-备份”;将适配后的第二代码文件B2的文件名称更新为“rely-v3.2.jar”。
9、该第一文件代码的文件类型为组件文件时,备选配置库为组件库,以该第一代码文件的文件名称为第一匹配指标,按照第一层匹配规则确定目标组件库,将文件名称、国产化运行环境的技术架构、操作系统中的至少一种作为第二匹配指标,按照第二层匹配规则进行匹配,用匹配到的第二代码文件替换第一代码文件;
例如:
9.1、第一代码文件C1经S6确定为组件文件,文件名为“comp-aop-1.6.4.js”;
9.2、该第一代码文件C1命中依赖库中第一层匹配规则中的“comp-aop((.|\n)+?).js”规则;
9.3、因为在S2中适配后目标技术架构为ARM架构,按照依赖配置库中第二层匹配规则中的C-300-ARM-1.6.4规则,将第一代码文件C1替换为第二代码文件C2,其中,第二代码文件C2的命名为“comp-aop-1.6.4-arm.js”;
9.4、将第一代码文件C1的文件名称更新为“comp-aop-1.6.4.js-备份”,将第二代码文件C2的文件名称更新为“comp-aop-1.6.4.js”。
10、若当前第一代码文件是本次遍历的最后一个文件时,执行步骤11,否则返回S5;将根据步骤5至步骤10的适配过程记录称适配方案。
11、利用步骤4确定的开发语言确定将所述源代码加载到目标国产化运行环境中进行编译,并结合步骤5至步骤10的替换的第二代码文件,编译生成新的源代码包,并检验代码包的完整性;
12、在代码包的完整性检验通过的情况下,输出新的源代码包,以及文件清单和适配方案。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,系统或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
尽管通过参考附图并结合优选实施例的方式对本发明进行了详细描述,但本发明并不限于此。在不脱离本发明的精神和实质的前提下,本领域普通技术人员可以对本发明的实施例进行各种等效的修改或替换,而这些修改或替换都应在本发明的涵盖范围内/任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

Claims (6)

1.一种运行环境适配系统,其特征在于,包括:文件解析模块、配置库适配模块、文件适配模块和至少一个配置库;所述配置库内存储至少一个第二代码文件;
所述文件解析模块用于解析待适配源代码包,得到至少一个第一代码文件;
所述配置库适配模块用于以文件类型为适配元素的第一层匹配规则,确定所述第一代码文件所应适配的目标配置库;所述配置库包括SQL配置库、依赖库和组件库;以SQL脚本为适配元素将代码片段与所述SQL配置库进行匹配;以文件名称为适配元素将组件文件与所述组件库进行匹配;以文件名称为适配元素将依赖文件与所述依赖库进行匹配;还基于以技术栈为适配元素的第二层匹配规则,根据目标运行环境的技术栈,确定所述目标配置库内的作为所述第一代码文件的适配目标的所述第二代码文件;用匹配到的第二代码文件替换第一代码文件;
所述技术栈包括技术架构、操作系统、中间件和数据库;
所述文件类型包括代码片段、组件文件和依赖文件。
2.根据权利要求1所述的系统,其特征在于,所述配置库适配模块包括备选子模块和确定子模块;
所述备选子模块用于根据所述第一代码文件的文件类型确定备选的配置库;
所述确定子模块用于将第一代码文件与所述备选的配置库进行适配,在适配成功的情况下,确定该备选的配置库为目标配置库。
3.根据权利要求1所述的系统,其特征在于,所述配置库还包括代码配置库;所述系统还包括特征解析模块和语言确定模块;
所述特征解析模块用于解析待适配源代码包,得到代码语言特征;
所述语言确定模块用于将所述代码语言特征与代码配置库中的规则进行逐条匹配,确定所述待适配源代码包的开发语言。
4.根据权利要求1所述的系统,其特征在于,还包括:
代码包生成模块,用于对确定的所述第二代码文件进行检验,在检验通过的情况下生成所述目标运行环境下新源代码包。
5.根据权利要求4所述的系统,其特征在于,还包括:
代码包验证模块,用于验证所述新源代码包的文件完整性。
6.一种运行环境适配方法,其特征在于,包括:
解析待适配源代码包,得到至少一个第一代码文件;
以文件类型为适配元素的第一层匹配规则,确定所述第一代码文件所应适配的目标配置库,所述配置库包括SQL配置库、依赖库和组件库;以SQL脚本为适配元素将代码片段与所述SQL配置库进行匹配;以文件名称为适配元素将组件文件与所述组件库进行匹配;以文件名称为适配元素将依赖文件与所述依赖库进行匹配;还基于以技术栈为适配元素的第二层匹配规则,根据目标运行环境的技术栈,确定所述目标配置库内的作为所述第一代码文件的适配目标的第二代码文件;用匹配到的第二代码文件替换第一代码文件;
所述技术栈包括技术架构、操作系统、中间件和数据库;
所述文件类型包括代码片段、组件文件和依赖文件。
CN202210256637.1A 2022-03-16 2022-03-16 一种运行环境适配系统及方法 Active CN114610385B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210256637.1A CN114610385B (zh) 2022-03-16 2022-03-16 一种运行环境适配系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210256637.1A CN114610385B (zh) 2022-03-16 2022-03-16 一种运行环境适配系统及方法

Publications (2)

Publication Number Publication Date
CN114610385A CN114610385A (zh) 2022-06-10
CN114610385B true CN114610385B (zh) 2023-05-09

Family

ID=81863067

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210256637.1A Active CN114610385B (zh) 2022-03-16 2022-03-16 一种运行环境适配系统及方法

Country Status (1)

Country Link
CN (1) CN114610385B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116361076B (zh) * 2023-06-01 2023-11-14 杭州费尔斯通科技有限公司 一种国产数据库备份方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112181489A (zh) * 2020-09-28 2021-01-05 中国平安人寿保险股份有限公司 代码迁移方法、装置、计算机设备及存储介质
CN112527415A (zh) * 2020-12-23 2021-03-19 深圳尚米网络技术有限公司 小程序跨平台迁移方法、装置、设备和介质
CN113391817A (zh) * 2021-06-16 2021-09-14 中国海洋大学 基于antlr4的头文件替换方法及装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106980505A (zh) * 2017-03-30 2017-07-25 广东电网有限责任公司信息中心 一种信息系统国产中间件迁移改造方法及装置
CN106980679A (zh) * 2017-03-30 2017-07-25 广东电网有限责任公司信息中心 一种信息系统国产数据库迁移改造方法及装置
US10846083B2 (en) * 2018-12-12 2020-11-24 Sap Se Semantic-aware and self-corrective re-architecting system
CN111427569B (zh) * 2019-01-10 2024-01-23 北京嘀嘀无限科技发展有限公司 免安装程序适配方法、装置、电子设备及存储介质
CN111610974B (zh) * 2019-02-26 2023-05-12 中国科学院沈阳自动化研究所 一种面向边缘计算的跨系统平台编译方法
CN113535184A (zh) * 2020-04-14 2021-10-22 华为技术有限公司 一种跨平台的代码转换方法及设备
CN114168237A (zh) * 2020-09-10 2022-03-11 华为技术有限公司 主题包适配方法及装置
CN112685081A (zh) * 2020-12-15 2021-04-20 建信金融科技有限责任公司 系统迁移方法、装置、电子设备及存储介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112181489A (zh) * 2020-09-28 2021-01-05 中国平安人寿保险股份有限公司 代码迁移方法、装置、计算机设备及存储介质
CN112527415A (zh) * 2020-12-23 2021-03-19 深圳尚米网络技术有限公司 小程序跨平台迁移方法、装置、设备和介质
CN113391817A (zh) * 2021-06-16 2021-09-14 中国海洋大学 基于antlr4的头文件替换方法及装置

Also Published As

Publication number Publication date
CN114610385A (zh) 2022-06-10

Similar Documents

Publication Publication Date Title
US8949166B2 (en) Creating and processing a data rule for data quality
US8984485B2 (en) Analysis of source code changes
US10387236B2 (en) Processing data errors for a data processing system
CN112394942B (zh) 基于云计算的分布式软件开发编译方法及软件开发平台
CN108446223B (zh) 一种基于动态编译的业务场景自动化测试方法
US8639675B2 (en) Linking of parent-child data records in a legacy software modernization system
CN109376142B (zh) 数据迁移方法及终端设备
US8930267B1 (en) Automated transactions clearing system and method
US7546311B2 (en) Optimization of left and right outer join operations in database management systems
CN112560100A (zh) 数据脱敏方法及装置、计算机可读存储介质、电子设备
CN114610385B (zh) 一种运行环境适配系统及方法
CN111767350A (zh) 数据仓库测试方法、装置、终端设备及存储介质
CN114610747A (zh) 数据查询方法、装置、设备及存储介质
CN112783867A (zh) 为满足实时大数据业务需求的数据库优化方法及云服务器
CN113901083A (zh) 基于多解析器的异构数据源操作资源解析定位方法和设备
CN114116691A (zh) 数据导入校验方法、系统、装置及计算机可读介质
WO2021129024A1 (zh) 识别通讯设备状态的方法、通讯系统及存储介质
CN114942905A (zh) 一种迁移数据验证方法、装置、设备和存储介质
CN110968634B (zh) 大数据场景下基于xml描述实现利用可编程函数式进行etl转换处理的方法
CN112347095B (zh) 数据表的处理方法、装置和服务器
CN113626423B (zh) 业务数据库的日志管理方法、装置、系统
CN111221846B (zh) 一种sql语句的自动翻译方法及装置
CN112416362B (zh) 一种pdk编译功能的实现方法
US20220100732A1 (en) Big data regression verification method and big data regression verification apparatus
CN118152354A (zh) 慢查询日志处理方法、装置、计算机设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant