天天看点

编程开发中的Compile、Make、Build详细对比

针对Java的开发工具,一般都有Compile、Make和Build三个菜单项,完成的功能的都差不多,但是又有区别。

编译,是将源代码转换为可执行代码,需指定源文件和编译输出的文件路径(输出目录)。

Java的编译会将:

java文件编译为class文件

非java文件(一般为资源文件,如图片、xml、txt、poperties等)原封不动复制到编译输出目录,并保持源文件夹的目录层次关系

在Java的集成开发环境中,如IDEA,有三种与编译相关选项Compile、Make、Build,最基本功能都是完成编译过程。

但又有很大区别:

Compile:只编译选定的目标,不管之前是否已编译过

编程开发中的Compile、Make、Build详细对比

Make:编译选定的目标,但Make只编译上次编译变化过的文件,减少重复劳动,节省时间

Build:对整个工程进行彻底重新编译,不管是否已编译过

Build过程往往会生成发布包,这个具体要看对IDE配置,Build在实际中应用很少,因为开发时候基本上不用,发布生产时候一般都用ANT等工具来发布。Build因为要全部编译,还要执行打包等额外工作,因此时间较长。

若平时只修改了少数几个文件的话,推荐make命令,节省编译时间。