技术新讯 > 计算推算,计数设备的制造及其应用技术 > 软件版本集成方法、系统、电子设备及存储介质与流程  >  正文

软件版本集成方法、系统、电子设备及存储介质与流程

  • 国知局
  • 2024-10-15 09:20:34

本发明实施例涉及软件集成,尤其涉及一种软件版本集成方法、系统、电子设备及存储介质。

背景技术:

1、目前,自动驾驶软件系统通常由多个模块构成,例如:传感融合模块、纵向控制模块、横线控制模块、hmi模块等。每个模块往往由不同的团队开发,各个模块开发结束后,由集成团队负责将每个模块的发布版本集成起来进行测试,测试通过后进行对外发布自动驾驶软件版本。

2、而在每个模块的开发过程中,如果需要验证整个集成后的运行效果,就需要等集成团队集成一个版本后才能进行验证。而集成团队往往只会集成本次版本发布所需的模块版本,如果开发人员想同时验证不同模块的不同版本集成后的效果,就只能协调不同模块开发人员提供各自模块对应版本,然后再手动集成到一起进行验证,集成过程非常麻烦,灵活性不高。

3、因此,如何灵活地集成软件版本,提升软件开发效率,是本发明亟待解决的技术问题。

技术实现思路

1、本发明实施例提供一种软件版本集成方法、系统、电子设备及存储介质,旨在灵活地进行软件版本的集成,提升软件的开发效率。

2、本发明实施例第一方面提供了一种软件版本集成方法,应用于服务器,所述方法包括:

3、接收客户端发送的集成配置文件,所述集成配置文件是所述客户端根据获取到的环境配置信息、模块配置信息以及流程配置信息生成的;

4、对所述集成配置文件进行解析,得到所述环境配置信息、所述模块配置信息和所述流程配置信息;

5、根据所述环境配置信息安装编译环境;

6、根据所述模块配置信息,拉取多个目标模块对应的目标版本的源码;

7、基于所述编译环境、按照所述流程配置信息中的流程步骤,依次对每个目标模块对应的目标版本的源码进行编译,得到多个编译结果,基于所述编译结果集成得到目标软件版本的集成软件。

8、可选的,所述环境配置信息至少包括:目标框架版本信息和目标平台的sdk版本信息;

9、所述根据所述环境配置信息安装编译环境,包括:

10、根据所述目标框架版本信息和所述目标平台的sdk版本信息,拉取目标框架版本和目标平台的sdk版本的安装包;

11、根据所述安装包安装所述目标框架版本对应的目标框架,以及安装所述目标平台的sdk版本对应的目标sdk。

12、可选的,所述基于所述编译环境、按照所述流程配置信息中的流程步骤,依次对每个目标模块对应的目标版本的源码进行编译,得到多个编译结果,基于所述编译结果集成得到目标软件版本的集成软件,包括:

13、根据所述流程配置信息,确定多个目标平台以及所述多个目标平台对应的流程信息;

14、根据每个目标平台对应的流程信息中的流程步骤,基于所述目标框架以及所述目标sdk,依次在每个目标平台下,对所述每个目标模块对应的目标版本的源码进行编译,得到每个目标平台下的多个编译结果;

15、将每个目标平台下的所有编译结果集成为每个目标平台下的目标软件版本的集成软件;

16、直至所有目标平台下的目标软件版本的集成软件集成完毕。

17、可选的,在所述直至所有目标平台下的目标软件版本的集成软件集成完毕之后,所述方法还包括:

18、将所述所有目标平台下的目标软件版本的集成软件进行保存,并依次进行功能验证。

19、可选的,在所述流程配置信息包括结果上传的情况下,所述方法还包括:

20、将所述目标软件版本的集成软件上传至集成产物托管平台。

21、本发明实施例第二方面提供了一种软件版本集成方法,应用于客户端,所述方法包括:

22、响应于用户的配置操作,获取用户配置的环境配置信息、模块配置信息以及流程配置信息;

23、根据所述环境配置信息、所述模块配置信息以及所述流程配置信息,生成集成配置文件;

24、将所述集成配置文件发送至服务器,以使所述服务器根据所述集成配置文件中的所述环境配置信息安装编译环境,根据所述集成配置文件中的所述模块配置信息拉取多个目标模块对应的目标版本的源码,以及基于所述编译环境、根据所述集成配置文件中的流程配置信息中的流程步骤,依次对每个目标模块对应的目标版本的源码进行编译,得到多个编译结果,基于所述编译结果集成得到目标软件版本的集成软件。

25、本发明实施例第三方面提供了一种软件版本集成系统,应用于服务器,所述系统包括:

26、接收模块,用于接收客户端发送的集成配置文件,所述集成配置文件是所述客户端根据获取到的环境配置信息、模块配置信息以及流程配置信息生成的;

27、解析模块,用于对所述集成配置文件进行解析,得到所述环境配置信息、所述模块配置信息和所述流程配置信息;

28、环境编译模块,用于根据所述环境配置信息安装编译环境;

29、源码拉取模块,用于根据所述模块配置信息,拉取多个目标模块对应的目标版本的源码;

30、版本集成模块,用于基于所述编译环境、按照所述流程配置信息中的流程步骤,依次对每个目标模块对应的目标版本的源码进行编译,得到多个编译结果,基于所述编译结果集成得到目标软件版本的集成软件。

31、可选的,所述环境配置信息至少包括:目标框架版本信息和目标平台的sdk版本信息;

32、所述环境编译模块,包括:

33、安装包获取模块,用于根据所述目标框架版本信息和所述目标平台的sdk版本信息,拉取目标框架版本和目标平台的sdk版本的安装包;

34、环境编译子模块,用于根据所述安装包安装所述目标框架版本对应的目标框架,以及安装所述目标平台的sdk版本对应的目标sdk。

35、可选的,所述版本集成模块,包括:

36、确定模块,用于根据所述流程配置信息,确定多个目标平台以及所述多个目标平台对应的流程信息;

37、编译结果确定模块,用于根据每个目标平台对应的流程信息中的流程步骤,基于所述目标框架以及所述目标sdk,依次在每个目标平台下,对所述每个目标模块对应的目标版本的源码进行编译,得到每个目标平台下的多个编译结果;

38、第一集成子模块,用于将每个目标平台下的所有编译结果集成为每个目标平台下的目标软件版本的集成软件;

39、第二集成子模块,用于直至所有目标平台下的目标软件版本的集成软件集成完毕。

40、可选的,所述系统还包括:

41、保存模块,用于在所述直至所有目标平台下的目标软件版本的集成软件集成完毕之后,将所述所有目标平台下的目标软件版本的集成软件进行保存,并依次进行功能验证。

42、可选的,在所述流程配置信息包括结果上传的情况下,所述系统还包括:

43、上传模块,用于将所述目标软件版本的集成软件上传至集成产物托管平台。

44、本发明实施例第四方面提供了一种软件版本集成系统,应用于客户端,所述系统包括:

45、获取模块,用于响应于用户的配置操作,获取用户配置的环境配置信息、模块配置信息以及流程配置信息;

46、文件生成模块,用于根据所述环境配置信息、所述模块配置信息以及所述流程配置信息,生成集成配置文件;

47、发送模块,用于将所述集成配置文件发送至服务器,以使所述服务器根据所述集成配置文件中的所述环境配置信息安装编译环境,根据所述集成配置文件中的所述模块配置信息拉取多个目标模块对应的目标版本的源码,以及基于所述编译环境、根据所述集成配置文件中的流程配置信息中的流程步骤,依次对每个目标模块对应的目标版本的源码进行编译,得到多个编译结果,基于所述编译结果集成得到目标软件版本的集成软件。

48、本发明实施例第五方面提供了一种电子设备,所述电子设备包括:包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述计算机程序被该处理器执行时实现如本发明实施例第一方面的软件版本集成方法或本发明实施例第二方面的软件版本集成方法。

49、本发明实施例第六方面提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现本发明实施例第一方面的软件版本集成方法或本发明实施例第二方面的软件版本集成方法。

50、通过本发明实施例提供的软件版本集成方法,服务器接收客户端发送的集成配置文件;对配置文件进行解析,得到环境配置信息、模块配置信息和流程配置信息;根据环境配置信息安装编译环境;根据模块配置信息,拉取多个目标模块对应的目标版本的源码;基于编译环境、按照流程配置信息中的流程步骤,依次对每个目标模块对应的目标版本的源码进行编译,得到多个编译结果,基于编译结果集成得到目标软件版本的集成软件。如此,本实施例提供了一种非常灵活的软件版本集成方法,通过本方法可以灵活配置各种集成环境,需要集成的各个模块的任意版本,以及可任意指定的配置流程,然后快速集成得到目标软件版本的集成软件,让软件集成非常灵活,效率非常高,也使得每个模块的开发人员都能拥有集成软件版本的能力,提高了开发效率和问题分析能力。

本文地址:https://www.jishuxx.com/zhuanli/20241015/313813.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。