[Intellij IDEA : 开发工具] 菜单项中Compile、Make和Build的区别
2015-06-22 00:52
459 查看
Compile、Make和Build的区别
针对Java的开发工具,一般都有Compile、Make和Build三个菜单项,完成的功能的都差不多,但是又有区别。
编译,是将源代码转换为可执行代码的过程。编译需要指定源文件和编译输出的文件路径(输出目录)。Java的编译会将java编译为class 文件,将非java的文件(一般成为资源文件、比如图片、xml、txt、poperties等文件)原封不动的复制到编译输出目录,并保持源文件夹的目 录层次关系。
在Java的集成开发环境中,比如Eclipse、IDEA中,有常常有三种与编译相关的选项Compile、Make、Build三个选项。这三个选项最基本的功能都是完成编译过程。但又有很大的区别,区别如下:
1、Compile:只编译选定的目标,不管之前是否已经编译过。
2、Make:编译选定的目标,但是Make只编译上次编译变化过的文件,减少重复劳动,节省时间。(具体怎么检查未变化,这个就不用考虑了,IDE自己内部会搞定这些的)
3、Build:是对整个工程进行彻底的重新编译,而不管是否已经编译过。Build过程往往会生成发布包,这个具体要看对IDE的配置 了,Build在实际中应用很少,因为开发时候基本上不用,发布生产时候一般都用ANT等工具来发布。Build因为要全部编译,还要执行打包等额外工 作,因此时间较长。
===========================================================================
这篇文章说得比较清楚,因此,如果平时只修改了少数几个文件的话,应使用make命令,这样可以节省编译的时间。不然编译整个工程是非常耗时间的。
针对Java的开发工具,一般都有Compile、Make和Build三个菜单项,完成的功能的都差不多,但是又有区别。
编译,是将源代码转换为可执行代码的过程。编译需要指定源文件和编译输出的文件路径(输出目录)。Java的编译会将java编译为class 文件,将非java的文件(一般成为资源文件、比如图片、xml、txt、poperties等文件)原封不动的复制到编译输出目录,并保持源文件夹的目 录层次关系。
在Java的集成开发环境中,比如Eclipse、IDEA中,有常常有三种与编译相关的选项Compile、Make、Build三个选项。这三个选项最基本的功能都是完成编译过程。但又有很大的区别,区别如下:
1、Compile:只编译选定的目标,不管之前是否已经编译过。
2、Make:编译选定的目标,但是Make只编译上次编译变化过的文件,减少重复劳动,节省时间。(具体怎么检查未变化,这个就不用考虑了,IDE自己内部会搞定这些的)
3、Build:是对整个工程进行彻底的重新编译,而不管是否已经编译过。Build过程往往会生成发布包,这个具体要看对IDE的配置 了,Build在实际中应用很少,因为开发时候基本上不用,发布生产时候一般都用ANT等工具来发布。Build因为要全部编译,还要执行打包等额外工 作,因此时间较长。
===========================================================================
这篇文章说得比较清楚,因此,如果平时只修改了少数几个文件的话,应使用make命令,这样可以节省编译的时间。不然编译整个工程是非常耗时间的。
相关文章推荐
- U盘安装UEFI Debian 8.1 + Windows 8.1双系统
- Qt使用ui时,也可以使用栈对象
- 【easyui】—easyui教你编写一个前台的架子
- UI线程处理Handle
- OpenWrt路由器通过LuCI界面实现Guest SSID功能
- POJ 1458 && HDU 1159 Common Subsequence(LCS)
- 日常3--ueitor
- virtual box ---with UUID already exists如何生成新的UUID
- HDU 5273 Dylans loves sequence (逆序对,暴力)
- Handler,MessageQueue Loop 和Message的原理解析
- Handler,MessageQueue Loop 和Message的原理解析
- Handler,MessageQueue Loop 和Message的原理解析
- DP UVALive 6506 Padovan Sequence
- 找规律 UVALive 6506 Padovan Sequence
- UISlider
- .toString和String.valueOf()
- String、StringBuffer、StringBuilder三者的区别
- 文档型信息交互设计及相关技术实现
- 报错:this class is not key value coding-compliant for the key tableview
- UIView frame, bounds and center