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

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

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


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

Java的编译会将:


java文件编译为class文件

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

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

但又有很大区别:


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

image.png

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

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

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

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


目录
相关文章
|
6月前
|
缓存 架构师 算法
【Conan 入门教程 】深入理解 Conan 2.X 中的 self.source_folder
【Conan 入门教程 】深入理解 Conan 2.X 中的 self.source_folder
104 1
|
Java API Android开发
Gradle 依赖关系中 compile和 implementation的区别
将在一个项目中展示implementation,api以及compile之间的差异。 假设我有一个包含三个Gradle模块的项目: • app(Android应用) • my-android-library(Android库) • my-java-library(Java库) app具有my-android-library与依赖。my-android-library具有my-java-library依赖。
586 0
|
6月前
|
IDE 开发工具 C++
CMake中文手册_target_sources(3.26)
CMake中文手册_target_sources(3.26)
511 0
|
5月前
|
Unix
深入理解 CMake 的 `cmake --build` 命令
深入理解 CMake 的 `cmake --build` 命令
557 1
|
6月前
|
IDE Unix 测试技术
CMake基础(10)使用ninja构建
CMake基础(10)使用ninja构建
1017 1
|
6月前
|
编译器 Linux C语言
CMake指定交叉编译指南:从编译器设置到验证 (CMake Cross-compilation Guide: From Compiler Setup to Verification)
CMake指定交叉编译指南:从编译器设置到验证 (CMake Cross-compilation Guide: From Compiler Setup to Verification)
1696 1
|
开发工具 git
编译Gstreamer遇到的问题 autopoint: not found
编译Gstreamer遇到的问题 autopoint: not found
141 0
|
机器人 Linux 编译器
替代notepad++,notepad--介绍及插件cmake编译
替代notepad++,notepad--介绍及插件cmake编译
|
Python
【解决方案】解决CMake must be installed to build the following extensions: pyltp
【解决方案】解决CMake must be installed to build the following extensions: pyltp
216 0
|
数据可视化 编译器 Windows
CMake“cmake is not able to compile a simple test program”错误 的解决方法
CMake“cmake is not able to compile a simple test program”错误 的解决方法
916 0