CN112379865B - 基于Maven插件机制的软件开发框架更新方法 - Google Patents

基于Maven插件机制的软件开发框架更新方法 Download PDF

Info

Publication number
CN112379865B
CN112379865B CN202011206821.2A CN202011206821A CN112379865B CN 112379865 B CN112379865 B CN 112379865B CN 202011206821 A CN202011206821 A CN 202011206821A CN 112379865 B CN112379865 B CN 112379865B
Authority
CN
China
Prior art keywords
file
updating
plug
maven
update
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
CN202011206821.2A
Other languages
English (en)
Other versions
CN112379865A (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.)
Fujian Funo Mobile Communication Technology Co ltd
Original Assignee
Fujian Funo Mobile Communication 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 Fujian Funo Mobile Communication Technology Co ltd filed Critical Fujian Funo Mobile Communication Technology Co ltd
Priority to CN202011206821.2A priority Critical patent/CN112379865B/zh
Publication of CN112379865A publication Critical patent/CN112379865A/zh
Application granted granted Critical
Publication of CN112379865B publication Critical patent/CN112379865B/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/20Software design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • 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
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • G06F9/44526Plug-ins; Add-ons

Landscapes

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

Abstract

本发明提出一种基于Maven插件机制的软件开发框架更新方法,基于Maven插件可实现与开发环境IDE快速结合,操作简便高效,对开发人员透明、减低操作门槛。自定义更新脚本,可满足各类复杂更新场景并支持对框架进行升级或者回退操作。此种更新方式可广泛应用于框架技术更新、业务功能增强、安全漏洞修复等需要进行开发框架更新的应用软件开发场景。

Description

基于Maven插件机制的软件开发框架更新方法
技术领域
本发明涉及应用软件系统开发领域,涉及关注在应用软件开发过程中软件开发框架更新的方法,尤其涉及一种基于Maven插件机制的软件开发框架更新方法。
背景技术
随着移动互联网的飞速发展,软件系统应用越来越广泛,各行各业对软件系统的依赖程度越来越大,软件系统迭代更新速度及安全性将直接影响日常生产活动。基于当前软件系统需求迭代快、信息安全要求高等特点,很多软件公司均会开发封装自有开发框架,将通用或者特定业务功能进行封装形成软件框架或者组件,便于在多个项目中复用,提升开发效率。亦可在发现安全漏洞时采用相同的漏洞修复方案,快速修复相关安全漏洞。但是软件框架本身由于技术更新、功能增强或漏洞修复等原因也在不断的更新迭代,对于已使用旧软件框架进行开发的众多项目,如何快速高效的更新到新框架是许多软件公司都要面临的一大问题。
现有常规技术方案包括:
1、纯人工手动更新:开发人员基于新版本搭建开发框架,将基于旧框架开发的业务代码手动复制到新开发框架中,并修改需要更新的文件及手动执行数据库脚本,最终完成框架升级更新工作。
2、自动+手动更新:开发人员将后端业务逻辑封装打包(例如Jar包),通过Maven版本依赖管理,旧框架自动下载更新。同时开发人员将新框架前端文件(Html、Css、Js等)手动复制到旧框架中并手动更新所需文件及数据库脚本,完成开发框架更新工作。
这些方案虽能解决开发框架版本更新的问题,但还是存在如下问题:
1、人工操作、效率低、易出错:每个项目开发框架更新都需要人工介入手动操作,效率低下,且更新过程中容易出现文件遗留等问题,导致更新失败。
2、无法与开发环境IDE结合,更新门槛高:无法将框架更新操作与开发环境IDE相结合,更新操作并非对所以开发人员透明,框架更新工作需要核心开发人员完成。
3、不支持快速升/降框架版本:由于技术及安全漏洞等因素,不同项目可能需要对开发框架进行升级或者回退,目前方案无法快速支持版本回退操作。
发明内容
为了解决现有技术存在的缺陷和不足的问题,本发明提出一种基于Maven插件机制的软件开发框架更新方法,主要关注的是应用系统开发过程中软件框架更新的方法。采用一种基于Maven插件、可自定义更新脚本、支持升/降框架版本、操作简便高效的软件框架更新方法。由于此方法基于Maven插件、可自定义框架更新脚本,因此可快速与IDE相结合,适用于各类复杂框架结构更新,将框架更新工作从繁琐易错的人工操作中解放出来,极大提升更新成功率及工作效率。
本方案提出的应用系统开发过程中软件框架更新的方法。基于Maven插件可实现与开发环境IDE快速结合,操作简便高效,对开发人员透明、减低操作门槛。自定义更新脚本,可满足各类复杂更新场景并支持对框架进行升级或者回退操作。此种更新方式可广泛应用于框架技术更新、业务功能增强、安全漏洞修复等需要进行开发框架更新的应用软件开发场景。
名词解释:
Maven:Apache Maven,是一个软件(特别是Java软件)项目管理及自动构建工具,由Apache软件基金会所提供。基于项目对象模型(缩写:POM)概念,Maven利用一个中央信息片断能管理一个项目的构建、报告和文档等步骤。
Maven也可被用于构建和管理各种项目,例如C#,Ruby,Scala和其他语言编写的项目。Maven曾是Jakarta项目的子项目,现为由Apache软件基金会主持的独立Apache项目。
Maven插件:Maven就其本身来说只是提供一个执行环境,它并不知道需要在项目上完成什么操作,真正操作项目的是插件(plugin),比如编译Java有Compiler插件,打包有Jar插件等。所以要让Maven完成各种各样的任务,我们需要配置不同的插件,甚至自己编写插件。
和其他Maven项目一样,Maven的插件也是一种packaging类型(类型为maven-plugin),也拥有groupId,artifactId和version。简单地讲,一个Maven插件包含了一些列的goal,每一个goal对应于一个Mojo类(Maven Old Java Object,命名来自于Pojo),每个Mojo都需要实现org.apache.maven.plugin.Mojo接口,该接口定义了一个execute方法,在开发插件时,任务就是实现这个execute方法。
本发明具体包括以下内容:
一种基于Maven插件机制的软件开发框架更新方法,其特征在于,包括:开发框架更新插件开发方法、更新包制作上传方法和更新包下载更新方法;
所述开发框架更新插件开发方法包括以下步骤:
步骤S11:创建Maven插件项目;
步骤S12:编写任务执行方法,实现开发框架更新业务逻辑;
步骤S13:根据项目pom文件配置的url及版本信息,从Maven仓库中下载对应版本的框架更新包;
步骤S14:将下载的更新包解压到本地;
步骤S15:解析更新包中的install.xml文件,形成更新指令;
步骤S16:指令执行器载入更新指令并执行,完成框架更新操作;
步骤S17:删除下载文件及解压/解析过程中生成的临时文件;
步骤S18:在项目中执行Maven的install命令,将开发好的插件安装部署到Maven仓库中;
所述更新包制作上传方法包括以下步骤:
步骤S21:创建update文件夹;
步骤S22:在update目录下分别创建adds及sqls两个文件夹;
步骤S23:将开发框架更新时新增的文件复制到adds目录下;
步骤S24:将开发框架更新时需要执行的数据库脚本复制到sqls目录下;
步骤S25:在update文件夹下,创建install.xml文件,根据实际更新操作步骤及文件编写规范,完成install文件内容编写;
步骤S26:将整个update文件夹打包成jar文件,并上传到Maven仓库中;
所述更新包下载更新方法包括以下步骤:
步骤S31:在需要进行开发框架更新的项目pom文件中添加框架更新插件并引入配置;
步骤S32:从Maven仓库下载插件到本地;
步骤S33:在项目上执行插件执行命令;
步骤S34:根据插件名称和版本信息从Maven仓库下载框架更新包;
步骤S35:插件根据更新包中的install文件解析执行更新操作。
优选地,步骤S11具体包括:创建Maven插件项目并编写任务执行类,该类继承自org.apache.maven.plugin.AbstractMojo类;
在步骤S15中,install.xml文件格式如下:
<
Figure 100002_DEST_PATH_IMAGE002
xmlversion="1.0"encoding="utf-8"
Figure 233898DEST_PATH_IMAGE002
>
<operate>
<adds>
<add src=".\adds\a.txt" dest=".\src\b.txt"/>
</adds>
<edits>
<insert file=".\src\web.xml" row="21" node="" >
<![CDATA[
<session-config>
<session-timeout>20</session-timeout>
</session-config>
]]>
</insert>
<del file=".\src\web.xml" row="8" node=""></del>
</edits>
<dels>
<del file=".\src\c.txt" />
</dels>
<sqls>
<sql file=".\sqls\*.sql" />
</sqls>
</operate>
文件解析规则如下:
<adds>标签:解析为文件复制指令,支持将src指定的文件或文件夹复制到dest指定的路径;
<edits>标签:解析为文件编辑指令,可编辑src指定的文件,对文件内容进行插入或者删除,支持对指定的行、列进行操作;
<dels>标签:解析为文件删除指令,可将src指定的文件或文件夹删除;
<sqls>标签:解析为数据库脚本执行指令,可将src指定的数据库脚本载入,并自动完成数据库连接及脚本执行。
优选地,在步骤S24中,如果有多个sql文件且有严格执行顺序,按1-xx.sql、2-xx.sql……的方式进行文件命名。
优选地,在步骤S31中,在需要进行开发框架更新的项目pom文件中添加如下内容:
<plugin>
<groupId>aaa.bbb.ccc.ddd</groupId> //实际插件项目名称
<artifactId>tt-maven-plugin</artifactId> //实际插件模块名称
<version>xx.yy </version>//插件版本号
</plugin>。
本发明及其优选方案在应用软件开发框架更新场景中,跳出了传统手动或半自动框架更新的模式,以一种全新的思路解决了开发框架更新的相关问题。主要体现了如下优点:
1、全自动更新、提升工作效率:通过框架更新插件,全自动下载更新包进行框架更新,无需人工介入,极大提升更新效率及成功率。
2、开发环境IDE结合、简化操作:基于Mave插件开发机制,方便与开发环境结合,更新过程对开发人员透明,操作简便,门槛低。
3、自定义更新脚本、应对复杂场景:自定义一套更新脚本规范,可基于脚本编写出复杂更新逻辑,满足不同项目不同场景的框架更新需求。
4、支持版本升级/回退、更新方式灵活:可使用更新脚本制作正/反向更新逻辑,满足在技术更新、功能增强、漏洞修复等场景下的框架升级或回退操作,更新方式灵活多样。
附图说明
下面结合附图和具体实施方式对本发明进一步详细的说明:
图1为本发明实施例开发框架更新插件开发方法流程示意图;
图2为本发明实施例更新包制作上传方法流程示意图;
图3为本发明实施例更新包下载更新方法流程示意图。
具体实施方式
为让本专利的特征和优点能更明显易懂,下文特举实施例,并配合附图,作详细说明如下:
如图1-图3所示,本实施例方案主要包含开发框架更新插件开发、更新包制作上传和更新包下载更新三部分内容。
框架更新插件开发技术实现细节详述如下:
1.创建Maven-Plugin项目,并编写任务执行类,该类继承自org.apache.maven.plugin.AbstractMojo类。
2.编写任务执行方法,实现开发框架更新业务逻辑。
3.开发框架更新业务处理逻辑如下:
a)根据项目pom文件配置的url及版本信息(如未配置取插件内置默认值),从Maven仓库中下载对应版本的框架更新包。
b)将下载的更新包解压到本地。
c)解析上一步骤解压出来的文件夹中install.xml文件,形成一系列框架更新指令。install.xml文件格式如下:
<
Figure DEST_PATH_IMAGE004
xmlversion="1.0" encoding="utf-8"
Figure 291984DEST_PATH_IMAGE002
>
<operate>
<adds>
<add src=".\adds\a.txt" dest=".\src\b.txt"/>
</adds>
<edits>
<insert file=".\src\web.xml" row="21" node="" >
<![CDATA[
<session-config>
<session-timeout>20</session-timeout>
</session-config>
]]>
</insert>
<del file=".\src\web.xml" row="8" node=""></del>
</edits>
<dels>
<del file=".\src\c.txt" />
</dels>
<sqls>
<sql file=".\sqls\*.sql" />
</sqls>
</operate>
文件解析规则如下:
<adds>标签:解析为文件复制指令,支持将src指定的文件或文件夹复制到dest指定的路径。
<edits>标签:解析为文件编辑指令,可编辑src指定的文件,对文件内容进行插入或者删除,支持对指定的行、列进行操作。
<dels>标签:解析为文件删除指令,可将src指定的文件或文件夹删除。
<sqls>标签:解析为数据库脚本执行指令,可将src指定的数据库脚本载入,并自动完成数据库连接及脚本执行。
d)指令执行器载入更新指令并执行,完成框架更新操作。
e)删除下载文件及解压/解析过程中生成的临时文件。
4.在项目中执行Maven的install命令,完成自主开发的Maven插件的安装。
框架更新包制作及上传技术实现细节详述如下:
1.框架更新包制作人员创建一个文件夹,命名为update。
2.在update目录下分别创建adds及sqls两个文件夹
3.将开发框架更新时新增的文件复制到adds目录下
4.将开发框架更新时需要执行的数据库脚本复制到sqls,如果有多个sql文件且有严格执行顺序,需要按1-xx.sql、2-xx.sql 这种方式进行文件命名。
5.在update文件夹下,创建install.xml文件,根据实际更新操作步骤及文件编写规范,完成install文件内容编写。
6.将整个update文件夹打包成jar文件
7.为步骤6打包的jar文件确定版本号等信息,并作为第三方类库上传到Maven仓库中。
框架更新包下载及更新技术实现细节详述如下:
1.在需要进行开发框架更新的项目pom文件中添加如下内容:
<plugin>
<groupId>aaa.bbb.ccc.ddd</groupId> //实际插件项目名称
<artifactId>tt-maven-plugin</artifactId> //实际插件模块名称
<version>xx.yy </version>//插件版本号
</plugin>
2.在项目上执行插件执行命令:
mvn aaa.bbb.ccc.ddd:tt-maven-plugin:xx.yy:install
框架更新插件运行,将根据框架更新插件业务处理逻辑中描述的步骤进行框架更新操作,执行完毕后自动完成整个框架更新工作。
本专利不局限于上述最佳实施方式,任何人在本专利的启示下都可以得出其它各种形式的基于Maven插件机制的软件开发框架更新方法,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本专利的涵盖范围。

Claims (4)

1.一种基于Maven插件机制的软件开发框架更新方法,其特征在于,包括:开发框架更新插件开发方法、更新包制作上传方法和更新包下载更新方法;
所述开发框架更新插件开发方法包括以下步骤:
步骤S11:创建Maven插件项目;
步骤S12:编写任务执行方法,实现开发框架更新业务逻辑;
步骤S13:根据项目pom文件配置的url及版本信息,从Maven仓库中下载对应版本的框架更新包;
步骤S14:将下载的更新包解压到本地;
步骤S15:解析更新包中的install.xml文件,形成更新指令;
步骤S16:指令执行器载入更新指令并执行,完成框架更新操作;
步骤S17:删除下载文件及解压/解析过程中生成的临时文件;
步骤S18:在项目中执行Maven的install命令,将开发好的插件安装部署到Maven仓库中;
所述更新包制作上传方法包括以下步骤:
步骤S21:创建update文件夹;
步骤S22:在update目录下分别创建adds及sqls两个文件夹;
步骤S23:将开发框架更新时新增的文件复制到adds目录下;
步骤S24:将开发框架更新时需要执行的数据库脚本复制到sqls目录下;
步骤S25:在update文件夹下,创建install.xml文件,根据实际更新操作步骤及文件编写规范,完成install.xml文件内容编写;
步骤S26:将整个update文件夹打包成jar文件,并上传到Maven仓库中;
所述更新包下载更新方法包括以下步骤:
步骤S31:在需要进行开发框架更新的项目pom文件中添加开发框架更新插件并引入配置;
步骤S32:从Maven仓库下载插件到本地;
步骤S33:在项目上执行插件执行命令;
步骤S34:根据插件名称和版本信息从Maven仓库下载框架更新包;
步骤S35:插件根据更新包中的install.xml文件解析执行更新操作;
在步骤S15中,install.xml文件格式如下:
<
Figure DEST_PATH_IMAGE002
xml version="1.0"encoding="utf-8"
Figure 458782DEST_PATH_IMAGE002
>
<operate>
<adds>
<add src=".\adds\a.txt" dest=".\src\b.txt"/>
</adds>
<edits>
<insert file=".\src\web.xml" row="21" node="" >
<![CDATA[
<session-config>
<session-timeout>20</session-timeout>
</session-config>
]]>
</insert>
<del file=".\src\web.xml" row="8" node=""></del>
</edits>
<dels>
<del file=".\src\c.txt" />
</dels>
<sqls>
<sql file=".\sqls\*.sql" />
</sqls>
</operate>
文件解析规则如下:
<adds>标签:解析为文件复制指令,支持将src指定的文件或文件夹复制到dest指定的路径;
<edits>标签:解析为文件编辑指令,可编辑src指定的文件,对文件内容进行插入或者删除,支持对指定的行、列进行操作;
<dels>标签:解析为文件删除指令,可将src指定的文件或文件夹删除;
<sqls>标签:解析为数据库脚本执行指令,可将src指定的数据库脚本载入,并自动完成数据库连接及脚本执行。
2.根据权利要求1所述基于Maven插件机制的软件开发框架更新方法,其特征在于:步骤S11具体包括:创建Maven插件项目并编写任务执行类,该类继承自org.apache.maven.plugin.AbstractMojo类。
3.根据权利要求2所述基于Maven插件机制的软件开发框架更新方法,其特征在于:在步骤S24中,如果有多个sql文件且有严格执行顺序,按1-xx.sql、2-xx.sql……的方式进行文件命名。
4.根据权利要求3所述基于Maven插件机制的软件开发框架更新方法,其特征在于:在步骤S31中,在需要进行开发框架更新的项目pom文件中添加如下内容:
<plugin>
<groupId>aaa.bbb.ccc.ddd</groupId> //实际插件项目名称
<artifactId>tt-maven-plugin</artifactId> //实际插件模块名称
<version>xx.yy </version>//插件版本号
</plugin>。
CN202011206821.2A 2020-11-03 2020-11-03 基于Maven插件机制的软件开发框架更新方法 Active CN112379865B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011206821.2A CN112379865B (zh) 2020-11-03 2020-11-03 基于Maven插件机制的软件开发框架更新方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011206821.2A CN112379865B (zh) 2020-11-03 2020-11-03 基于Maven插件机制的软件开发框架更新方法

Publications (2)

Publication Number Publication Date
CN112379865A CN112379865A (zh) 2021-02-19
CN112379865B true CN112379865B (zh) 2022-09-16

Family

ID=74577632

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011206821.2A Active CN112379865B (zh) 2020-11-03 2020-11-03 基于Maven插件机制的软件开发框架更新方法

Country Status (1)

Country Link
CN (1) CN112379865B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114237572B (zh) * 2021-12-17 2023-04-14 北京金堤科技有限公司 原生工程集成开发框架的方法、装置、设备及存储介质
CN114722161B (zh) * 2022-06-09 2022-10-11 易方信息科技股份有限公司 在ide界面快速查询添加pm单任务状态的方法及装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9223594B2 (en) * 2011-07-01 2015-12-29 Exxonmobil Upstream Research Company Plug-in installer framework
CN105843638A (zh) * 2016-03-18 2016-08-10 浪潮软件集团有限公司 一种Spring旧版本框架的升级改造方法
CN106201578A (zh) * 2016-06-25 2016-12-07 国云科技股份有限公司 一种软件系统更新框架
CN110888669B (zh) * 2018-09-10 2023-04-28 福建天泉教育科技有限公司 一种在ide上创建模板工程的方法及系统
CN111796834B (zh) * 2020-06-30 2022-10-14 福信富通科技股份有限公司 一种可组合的微服务开发框架的部署方法、装置及设备

Also Published As

Publication number Publication date
CN112379865A (zh) 2021-02-19

Similar Documents

Publication Publication Date Title
CN111142903B (zh) 一种基于文件对比的配置文件交互式更新方法及装置
US20150339119A1 (en) System and Method Thereof for Creating Dynamically Attachable and Detachable Binary Files
CN112379865B (zh) 基于Maven插件机制的软件开发框架更新方法
JP6217277B2 (ja) ソフトウェア開発方法及びそのためのシステム
US20160350206A1 (en) Employing code overlays to facilitate software development
CN112306474B (zh) 一种基于组件化模板的vue项目平滑升级方法
CN112799677A (zh) 一种编译期的hook方法、装置、设备及存储介质
US11029934B2 (en) Method and system for updating legacy software
CN110109671B (zh) 一种webpack标签尺寸样式转换方法及装置
CN111722868A (zh) 一种申威防火墙快速移植高版本linux内核的方法
CN111984300B (zh) 代码复制方法及装置、电子设备和计算机可读存储介质
CN111435312A (zh) 应用程序管理方法、装置及电子设备
CN113360156B (zh) 一种ios编译方法及相关设备
CN110688140B (zh) 一种代码管理方法和终端
CN110647349B (zh) 一种实现iOS APP持续交付的方法
KR100834676B1 (ko) 소프트웨어 프로젝트 빌드 방법
Suereth et al. SBT in Action: The simple Scala build tool
CN113849181A (zh) 交叉编译工具链构建方法、装置、电子设备及存储介质
Olsson et al. Git Version Control Cookbook
US11775293B1 (en) Deploying a static code analyzer based on program synthesis from input-output examples
Glaman Drupal 8 Development Cookbook
Söderberg Automation of non-code documentation in a DevOps environment
TWI807824B (zh) 具有自動升級功能的開發系統以及開發系統的自動升級方法
US12014195B2 (en) System for providing an adaptable plugin framework for application transformation to cloud
CN113504913B (zh) 一种Adobe Flex代码自动转换方法

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