CN103927213A - 一种文件编译方法及编译装置 - Google Patents

一种文件编译方法及编译装置 Download PDF

Info

Publication number
CN103927213A
CN103927213A CN201410158968.7A CN201410158968A CN103927213A CN 103927213 A CN103927213 A CN 103927213A CN 201410158968 A CN201410158968 A CN 201410158968A CN 103927213 A CN103927213 A CN 103927213A
Authority
CN
China
Prior art keywords
file
compiling
equations
platform
compilation
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.)
Granted
Application number
CN201410158968.7A
Other languages
English (en)
Other versions
CN103927213B (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.)
Kingsoft Guangzhou Network Technology Co Ltd
Original Assignee
Kingsoft Guangzhou Network 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 Kingsoft Guangzhou Network Technology Co Ltd filed Critical Kingsoft Guangzhou Network Technology Co Ltd
Priority to CN201410158968.7A priority Critical patent/CN103927213B/zh
Publication of CN103927213A publication Critical patent/CN103927213A/zh
Application granted granted Critical
Publication of CN103927213B publication Critical patent/CN103927213B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

本发明实施例公开了一种文件编译方法及编译装置,能够在同一个平台编译不同类型的文件。所述文件编译方法包括:对编译平台能够直接调用的第一类文件进行编译;通过所述第一类文件的编译启动所述编译平台不能直接调用的第二类文件的编译。所述文件编译装置包括:第一编译单元,用于对编译平台能够直接调用的第一类文件进行编译;第二编译单元,用于通过所述第一类文件的编译启动所述编译平台不能直接调用的第二类文件的编译。本发明适用于在编译平台进行文件编译。

Description

一种文件编译方法及编译装置
技术领域
本发明涉及编译平台应用技术领域,尤其涉及一种文件编译方法及编译装置。
背景技术
现有技术中,现有编译平台例如VS2005(Visual Studio2005的简称),不能同时调用VS2005文件及apk文件的源文件进行编译,只能调用所述VS2005文件进行编译,即只能调用***.sln文件,并且输出的文件是windows平台的可执行文件。如果改造所述编译平台执行编译所述apk文件的源文件,就需要对所述编译平台进行大量改造和集成,这样,成本太高。
发明内容
有鉴于此,本发明实施例提供一种文件编译方法及编译装置,能够在同一个平台编译不同类型的文件。
一方面,本发明实施例提供一种文件编译方法,包括:
对编译平台能够直接调用的第一类文件进行编译;
通过所述第一类文件的编译启动所述编译平台不能直接调用的第二类文件的编译。
可选地,所述通过所述第一类文件的编译启动所述编译平台不能直接调用的第二类文件的编译包括:在所述第一类文件编译结束时,调用批处理文件;通过所述批处理文件执行脚本文件;通过所述脚本文件调用触发文件;通过所述触发文件对所述第二类文件进行编译。
可选地,在通过所述脚本文件调用触发文件之前包括:通过所述脚本文件获取所述第二类文件中需要编译的内容;对所述第二类文件的版本号进行修改,并将所述修改后的第二类文件自动提交入代码版本管理系统。
可选地,在通过所述触发文件对所述第二类文件进行编译之后包括:根据配置,将编译后的所述第二类文件拷贝至相应的路径下。
可选地,所述第一类文件是基于windows操作系统的应用程序的源文件;所述第二类文件是基于安卓操作系统的应用程序的源文件。
可选地,所述脚本文件为Python脚本文件;所述触发文件为ant编译工具。
本发明实施例所述文件编译方法,对编译平台能够直接调用的第一类文件进行编译,通过所述第一类文件的编译启动所述编译平台不能直接调用的第二类文件的编译,这样,既不影响其它流程也不需要修改所述编译平台的配置和代码,能够对所述第一类文件进行编译,并能够启动对第二类文件的编译,从而能够在同一个平台编译不同类型的文件。
另一方面本发明实施例提供一种文件编译装置,包括:
第一编译单元,用于对编译平台能够直接调用的所述第一类文件进行编译;
第二编译单元,用于通过所述第一类文件的编译启动所述编译平台不能直接调用的第二类文件的编译。
可选地,所述第二编译单元包括:第一调用模块,用于当在所述第一类文件编译结束时,调用批处理文件;执行模块,用于通过所述批处理文件执行脚本文件;第二调用模块,用于通过所述脚本文件调用编译模块;编译模块,用于对所述第二类文件进行编译。
可选地,所述执行模块包括:获取子模块,用于通过所述脚本文件获取所述第二类文件中需要编译的内容;修改子模块,用于对所述第二类文件的版本号进行修改;自动提交子模块,用于将所述修改后的第二类文件自动提交入代码版本管理系统。
可选地,所述第二编译单元还包括:拷贝模块,用于根据配置,将经过编译后的所述第二类文件拷贝至相应的路径下。
可选地,所述第一类文件是基于windows操作系统的应用程序的源文件;所述第二类文件是基于安卓操作系统的应用程序的源文件。
可选地,所述脚本文件为Python脚本文件;所述触发文件为ant编译工具。
本发明实施例所述文件编译装置,由第一编译单元对编译平台能够直接调用的所述第一类文件进行编译,由第二编译单元通过所述第一类文件的编译启动所述编译平台不能直接调用的第二类文件的编译,这样,既不影响其它流程也不需要修改所述编译平台的配置和代码,能够对所述第一类文件进行编译,并能够启动对第二类文件的编译,从而能够在同一个平台编译不同类型的文件。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本发明的文件编译方法一实施例的流程示意图;
图2为本发明的文件编译装置一实施例的结构示意图;
图3为本发明的文件编译装置另一实施例的结构示意图;
图4为本发明的文件编译装置又一实施例的结构示意图。
具体实施方式
下面结合附图对本发明实施例一种文件编译方法及编译装置进行详细描述。
应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
参看图1所示,本发明文件编译方法的具体实施方式,包括:
S1、对编译平台能够直接调用的第一类文件进行编译;
S2、通过所述第一类文件的编译启动所述编译平台不能直接调用的第二类文件的编译。
本发明实施例所述的文件编译方法,对编译平台能够直接调用的第一类文件进行编译,然后通过所述第一类文件的编译启动所述编译平台不能直接调用的第二类文件的编译,这样,既不影响其它流程也不需要修改所述编译平台的配置和代码,能够对所述第一类文件进行编译,并能够启动对第二类文件的编译,从而能够在同一个平台编译不同类型的文件,并且简化了编译流程。
在前述文件编译方法的具体实施方式中,可选地,所述通过所述第一类文件的编译启动所述编译平台不能直接调用的第二类文件的编译(S2)包括:在所述第一类文件编译结束时,调用批处理文件;通过所述批处理文件执行脚本文件;通过所述脚本文件调用触发文件;通过所述触发文件对所述第二类文件进行编译,从而在同一个平台完成了对所述第二类文件的编译,简化了编译流程,提高了工作效率。
在前述文件编译方法的具体实施方式中,可选地,在通过所述脚本文件调用触发文件之前包括:通过所述脚本文件获取所述第二类文件中需要编译的内容;对所述第二类文件的版本号进行修改,并将所述修改后的第二类文件自动提交入代码版本管理系统,从而便于版本的管理以及对应关联文件的查找。
在前述文件编译方法的具体实施方式中,可选地,在通过所述触发文件对所述第二类文件进行编译之后包括:根据配置,将编译后的所述第二类文件拷贝至相应的路径下。这样,编译出的文件可以在所述编译平台上输出到统一的同一个目录下,并可以直接进行打包操作,从而,便于统一管理编译出的文件,方便工程师处理、测试,简化了发布流程,大大的提高团队的工作效率。
在前述文件编译方法的具体实施方式中,可选地,所述第一类文件是基于windows操作系统的应用程序的源文件;所述第二类文件是基于安卓操作系统的应用程序的源文件。本实施例中,所述编译平台例如Visual Studio、EmbeddedVisual C++、Platform Builder等windows平台应用程序的开发环境,不能直接调用所述基于安卓操作系统的应用程序的源文件。
在前述文件编译方法的具体实施方式中,可选地,所述脚本文件为Python脚本文件;所述触发文件为ant编译工具。本实施例中,通过所述批处理文件运行所述Python脚本文件,然后通过所述Python脚本文件调用所述ant编译工具,并对所述基于安卓操作系统的应用程序的源文件进行编译,从而让安卓工程师也能够通过所述编译平台例如Visual Studio,编译出需要的安卓系统安装包。
参看图2所示,本发明实施例还提供一种文件编译装置,包括:第一编译单元1,用于对编译平台能够直接调用的所述第一类文件进行编译;第二编译单元2,用于通过所述第一类文件的编译启动所述编译平台不能直接调用的第二类文件的编译。
本发明实施例所述文件编译装置,由第一编译单元1对编译平台能够直接调用的所述第一类文件进行编译,由第二编译单元2通过所述第一类文件的编译启动所述编译平台不能直接调用的第二类文件的编译,这样,既不影响其它流程也不需要修改所述编译平台的配置和代码,能够对所述第一类文件进行编译,并能够启动对第二类文件的编译,从而能够在同一个平台编译不同类型的文件,并且简化了编译流程。
参看图3所示,在前述文件编译装置的具体实施方式中,可选地,所述第二编译单元2包括:第一调用模块21,用于当在所述第一类文件编译结束时,调用批处理文件;执行模块22,用于通过所述批处理文件执行脚本文件;第二调用模块23,用于通过所述脚本文件调用编译模块;编译模块24,用于对所述第二类文件进行编译,从而在同一个平台完成了对所述第二类文件的编译,简化了编译流程,提高了工作效率。
参看图4所示,在前述文件编译装置的具体实施方式中,可选地,所述执行模块22包括:获取子模块221,用于通过所述脚本文件获取所述第二类文件中需要编译的内容;修改子模块222,用于对所述第二类文件的版本号进行修改;自动提交子模块223,用于将所述修改后的第二类文件自动提交入代码版本管理系统,从而便于版本的管理以及对应关联文件的查找。
在前述文件编译装置的具体实施方式中,可选地,所述第二编译单元2还包括:拷贝模块25,用于根据配置,将经过编译后的所述第二类文件拷贝至相应的路径下。这样,编译出的文件可以在所述编译平台上输出到统一的同一个目录下,并可以直接进行打包操作,从而,便于统一管理编译出的文件,方便工程师处理,测试,简化了发布流程,大大的提高团队的工作效率。
在前述文件编译装置的具体实施方式中,可选地,所述第一类文件是基于windows操作系统的应用程序的源文件;所述第二类文件是基于安卓操作系统的应用程序的源文件。本实施例中,所述例如Visual Studio、Embedded VisualC++、Platform Builder等windows平台应用程序的开发环境,不能直接调用所述基于安卓操作系统的应用程序的源文件。
在前述文件编译装置的具体实施方式中,可选地,所述脚本文件为Python脚本文件;所述触发文件为ant编译工具。本实施例中,通过所述批处理文件运行所述Python脚本文件,然后通过所述Python脚本文件调用所述ant编译工具,并对所述基于安卓操作系统的应用程序的源文件进行编译,从而让安卓工程师也能够通过所述编译平台例如Visual Studio,编译出需要的安卓系统安装包。
本发明上述各实施例中,Apk文件是基于安卓操作系统的安装包,是可执行文件。批处理文件,是windows平台下一种可以批量调用其他可执行文件的脚本文件。Python脚本,是一种简单的可以快速完成逻辑的脚本语言。SVN(Subversion的简称,代码版本管理系统),是用于记录工程代码的工具。Ant编译工具是一种编译脚本,是用于处理编译的工具。
本发明上述各实施例中,所述编译平台并不限于Visual Studio、EmbeddedVisual C++、Platform Builder等windows平台应用程序的开发环境;所述第一类文件也不限于基于windows操作系统的应用程序的源文件;所述第二类文件也不限于基于安卓操作系统的应用程序的源文件。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (12)

1.一种文件编译方法,其特征在于,包括:
对编译平台能够直接调用的第一类文件进行编译;
通过所述第一类文件的编译启动所述编译平台不能直接调用的第二类文件的编译。
2.根据权利要求1所述的文件编译方法,其特征在于,所述通过所述第一类文件的编译启动所述编译平台不能直接调用的第二类文件的编译包括:
在所述第一类文件编译结束时,调用批处理文件;
通过所述批处理文件执行脚本文件;
通过所述脚本文件调用触发文件;
通过所述触发文件对所述第二类文件进行编译。
3.根据权利要求2所述的文件编译方法,其特征在于,在通过所述脚本文件调用触发文件之前包括:
通过所述脚本文件获取所述第二类文件中需要编译的内容;
对所述第二类文件的版本号进行修改,并将所述修改后的第二类文件自动提交入代码版本管理系统。
4.根据权利要求2所述的文件编译方法,其特征在于,在通过所述触发文件对所述第二类文件进行编译之后包括:
根据配置,将编译后的所述第二类文件拷贝至相应的路径下。
5.根据权利要求1-4任一项所述的文件编译方法,其特征在于,
所述第一类文件是基于windows操作系统的应用程序的源文件;
所述第二类文件是基于安卓操作系统的应用程序的源文件。
6.根据权利要求2-4任一项所述的文件编译方法,其特征在于,所述脚本文件为Python脚本文件;
所述触发文件为ant编译工具。
7.一种文件编译装置,其特征在于,包括:
第一编译单元,用于对编译平台能够直接调用的第一类文件进行编译;
第二编译单元,用于通过所述第一类文件的编译启动所述编译平台不能直接调用的第二类文件的编译。
8.根据权利要求7所述的文件编译装置,其特征在于,所述第二编译单元包括:
第一调用模块,用于当在所述第一类文件编译结束时,调用批处理文件;
执行模块,用于通过所述批处理文件执行脚本文件;
第二调用模块,用于通过所述脚本文件调用编译模块;
编译模块,用于对所述第二类文件进行编译。
9.根据权利要求8所述的文件编译装置,其特征在于,所述执行模块包括:
获取子模块,用于通过所述脚本文件获取所述第二类文件中需要编译的内容;
修改子模块,用于对所述第二类文件的版本号进行修改;
自动提交子模块,用于将所述修改后的第二类文件自动提交入代码版本管理系统。
10.根据权利要求8所述的文件编译装置,其特征在于,所述第二编译单元还包括:
拷贝模块,用于根据配置,将经过编译后的所述第二类文件拷贝至相应的路径下。
11.根据权利要求7-10任一项所述的文件编译装置,其特征在于,
所述第一类文件是基于windows操作系统的应用程序的源文件;
所述第二类文件是基于安卓操作系统的应用程序的源文件。
12.根据权利要求8-10任一项所述的文件编译装置,其特征在于,所述脚本文件为Python脚本文件;
所述触发文件为ant编译工具。
CN201410158968.7A 2014-04-18 2014-04-18 一种文件编译方法及编译装置 Expired - Fee Related CN103927213B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410158968.7A CN103927213B (zh) 2014-04-18 2014-04-18 一种文件编译方法及编译装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410158968.7A CN103927213B (zh) 2014-04-18 2014-04-18 一种文件编译方法及编译装置

Publications (2)

Publication Number Publication Date
CN103927213A true CN103927213A (zh) 2014-07-16
CN103927213B CN103927213B (zh) 2017-08-25

Family

ID=51145442

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410158968.7A Expired - Fee Related CN103927213B (zh) 2014-04-18 2014-04-18 一种文件编译方法及编译装置

Country Status (1)

Country Link
CN (1) CN103927213B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104462393A (zh) * 2014-12-10 2015-03-25 北京国双科技有限公司 用于编译的文件路径的确定方法及装置
CN105138387A (zh) * 2015-08-31 2015-12-09 惠州Tcl移动通信有限公司 一种软件的编译方法、装置及系统
CN105630569A (zh) * 2015-12-17 2016-06-01 北京金山安全软件有限公司 一种软件源代码的处理方法、装置及电子设备
WO2021168711A1 (zh) * 2020-02-26 2021-09-02 深圳市大疆创新科技有限公司 编译控制方法、编译控制装置和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101667134A (zh) * 2009-09-23 2010-03-10 中兴通讯股份有限公司 一种构建编译系统的方法、一种编译系统及其构建装置
CN102053836A (zh) * 2010-12-31 2011-05-11 广东欧珀电子工业有限公司 一种Android应用开发的版本管理工具的实现方法
CN102541727A (zh) * 2010-12-17 2012-07-04 无锡江南计算技术研究所 一种程序调试方法及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101667134A (zh) * 2009-09-23 2010-03-10 中兴通讯股份有限公司 一种构建编译系统的方法、一种编译系统及其构建装置
CN102541727A (zh) * 2010-12-17 2012-07-04 无锡江南计算技术研究所 一种程序调试方法及系统
CN102053836A (zh) * 2010-12-31 2011-05-11 广东欧珀电子工业有限公司 一种Android应用开发的版本管理工具的实现方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104462393A (zh) * 2014-12-10 2015-03-25 北京国双科技有限公司 用于编译的文件路径的确定方法及装置
CN105138387A (zh) * 2015-08-31 2015-12-09 惠州Tcl移动通信有限公司 一种软件的编译方法、装置及系统
CN105630569A (zh) * 2015-12-17 2016-06-01 北京金山安全软件有限公司 一种软件源代码的处理方法、装置及电子设备
WO2021168711A1 (zh) * 2020-02-26 2021-09-02 深圳市大疆创新科技有限公司 编译控制方法、编译控制装置和存储介质

Also Published As

Publication number Publication date
CN103927213B (zh) 2017-08-25

Similar Documents

Publication Publication Date Title
CN110377290B (zh) 一种目标工程编译的方法、装置及设备
CN105630557B (zh) 热补丁方法和装置
CN102289378B (zh) 自动生成应用程序的方法
CN105446712B (zh) 一种应用程序缺陷修补方法及装置
US20140096110A1 (en) Managing a set of software modules in a software runtime environment
WO2016177124A1 (zh) 一种实现持续集成测试的方法及装置
CN103927213A (zh) 一种文件编译方法及编译装置
CN103440156B (zh) 一种能用于多种系统下的Linux软件包制作方法
CN103412816A (zh) 一种基于linux的持续集成测试平台搭建方法
US10248409B1 (en) Limiting the effects of source code patches on corresponding native-code patches
CN103645920A (zh) 一种嵌入式系统程序烧录方法及系统
CN105159738A (zh) 一种热补丁实现方法及系统
EP2503457A4 (en) LOADING AND DEBUGGING METHOD AND DEBUGGING SYSTEM THEREOF
CN104915209A (zh) 一种linux内核跟踪调试与修复问题的方法
CN109614107B (zh) 一种软件开发工具包的集成方法和装置
CN109032687B (zh) 屏蔽sdk危险调用的方法及装置
CN104142846A (zh) 一种程序脚本编译方法和装置
CN107179982B (zh) 一种跨进程调试方法和装置
US10445074B2 (en) Method of optimally compiling PLC command
CN103645905A (zh) 一种增量数据获取方法及装置
CN107273750B (zh) Android设备内核漏洞的修补系统及方法
CN103885784A (zh) 具有安全模块可插拔功能的Android平台构建方法
Do et al. Cheetah: just-in-time taint analysis for android apps
EP3956793A1 (en) Source modification engine
WO2022222626A1 (zh) 一种增量源码获取方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: 510623 unit 01-B, Guangzhou bank building, No. 30 Zhujiang Road, Guangzhou, Guangdong, Tianhe District, China

Applicant after: Guangzhou cheetah Network Technology Co.,Ltd.

Address before: 510623 unit 01-B, Guangzhou bank building, No. 30 Zhujiang Road, Guangzhou, Guangdong, Tianhe District, China

Applicant before: GUANGZHOU KINGSOFT NETWORK TECHNOLOGY Co.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170825

CF01 Termination of patent right due to non-payment of annual fee