代码编译 Compile、Make、Build 的区别

代码编译 Compile、Make、Build 的区别

https://blog.csdn.net/fanzheng220112583/article/details/7780250

 

VC++6.0中Compile和Build的区别

"compile"是“编译”的意思,“build”是“链接”的意思。
compile 的作用是对你的代码进行语法检查,将你的文本程序语言转化成计算机可以运行的“01010....”形式的二进制文件。
build 的作用是将你在程序中调用到的类库融合到你的程序中,比如你用到了printf()函数,那么内部实现该函数的类库代码就会添加到你的程序中。
compile过程生成“.obj”文件或".o"文件,这个和编译器有关,vc++中是“.obj”文件。
build过程生成“.exe”文件。这个可以直接运行
理论上来说应该先点"complile",再点"build"。不过在vc++中直接点“build”它会自动先给你compile再build。

Java 中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因为要全部编译,还要执行打包等额外工作,因此时间较长。

转载于:https://www.cnblogs.com/111testing/p/9274835.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/397564.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

php5 mongodb,ThinkPHP5之Mongodb使用技巧

安装composer require topthink/think-mongo目录结构实践安装完成之后,就根据文档中的介绍开始进行codeing了,但是……首先我们来看下官方的使用文档配置说明不要以为这样就能够正常的使用了,结果远比预想中的艰难直接爆了这样的错误&#xf…

查看并设置oracle并发连接数

1.Sql代码1.select count(*) from v$process select count(*) from v$process --当前的数据库连接数2.Sql代码1.select value from v$parameter where name processes select value from v$parameter where name processes--数据库允许的最大连接数3.Sql代码1.alter system …

spring boot 下载

spring boot 下载 posted on 2018-07-06 22:38 zhouixi 阅读(...) 评论(...) 编辑 收藏 转载于:https://www.cnblogs.com/1-Admin/p/9275802.html

15个Java多线程面试题

2019独角兽企业重金招聘Python工程师标准>>> 在任何Java面试当中多线程和并发方面的问题都是必不可少的一部分。如果你想获得任何股票投资银行的前台资讯职位,那么你应该准备很多关于多线程的问题。在投资银行业务中多线程和并发是一个非常受欢迎的话题&…

java 将3变为03,03 Java序列化引发的血案

1、前言《手册》第 9 页 “OOP 规约” 部分有一段关于序列化的约定【强制】当序列化类新增属性时,请不要修改 serialVersionUID 字段,以避免反序列失败;如果完全不兼容升级,避免反序列化混乱,那么请修改 serialVersion…

《The Pomodoro Technique》

番茄工作法,专注当下,远离拖延焦虑症 简介What to solveHow to useSome applications自我总结简介 番茄工作法是简单易行的时间管理方法,是由弗朗西斯科西里洛于1992年创立的一种相对于GTD更微观的时间管理方法。 What to solve 各种Deadline…

XCoreRedux框架:Android UI组件化与Redux实践

XCoreRedux框架:Android UI组件化与Redux实践 author: 莫川 https://github.com/nuptboyzhb/XCoreRedux源码Demo:https://github.com/nuptboyzhb/XCoreRedux使用android studio打开该项目。 目录结构 demo 基于xcore框架写的一个小demoxcore XCoreRedux核心代码库…

Gigaset ME/pure/pro体验:就是这个德味

Gigaset是何方神圣?可能大多数人都没有听过。但如果说起西门子,那各位肯定就会“哦”地一声明白了。实际上,Gigaset就是西门子旗下的手机品牌,当年世界上第一部数字无绳电话就是该品牌的产物,所以这次Gigaset在智能手机…

java独步寻花,小班语言《江畔独步寻花》

小班语言《江畔独步寻花》活动目标:1、学习古诗,感知和理解古诗描绘的景象。2、感受古诗的文学语言。活动准备:1、古诗《江畔独步寻花》PPT课件。2、柳条两枝(一条叶子多的,一条叶子少的)活动过程:一、导入&#xff1a…

linux-shell——02

Linux命令的通用命令格式 :命令字 【选项】 【参数】 选项: 作用:用于调节命令的具体功能"-"引导短格式选项(单个字符) EX:“-l”"--"引导长格式选项(多个字符) EX: "…

IOS 资料备份

2019独角兽企业重金招聘Python工程师标准>>> 利用本地服务器边下载视频边播放 目前还没有做好,下面是参考资料,做个备份; 参考资料: http://blog.csdn.net/wxw55/article/details/17557295 http://www.code4app.com/io…

BZOJ 1854: [Scoi2010]游戏( 二分图最大匹配 )

匈牙利算法..从1~10000依次找增广路, 找不到就停止, 输出答案. ----------------------------------------------------------------------------#include<bits/stdc.h>using namespace std;const int MAXL 10009, MAXR 1000009;struct edge {int to;edge* next;} E[MA…

linux adduser mysql,linux独享初始配置方法(ftp、apache、mysql)

在此我们对您购买的linux独享服务器的配置方法进行简单说明&#xff0c;内容涉及ftp、apache、mysql相关配置&#xff0c;希望给您使用中带来方便。该文章为指导性说明。☆独立服务器linux系统ftp帐户的设置方法&#xff1a;1、首先服务器端已经安装vsftp。2、您可以直接登陆服…

Android下文件的压缩和解压(Zip格式)

Zip文件结构 ZIP文件结构如下图所示&#xff0c; File Entry表示一个文件实体,一个压缩文件中有多个文件实体。 文件实体由一个头部和文件数据组&#xff0c;Central Directory由多个File header组成&#xff0c;每个File header都保存一个文件实体的偏移&#xff0c;文件最后由…

快速理解和使用 ES7 await/async

await/async 是 ES7 最重要特性之一&#xff0c;它是目前为止 JS 最佳的异步解决方案了。虽然没有在 ES2016 中录入&#xff0c;但很快就到来&#xff0c;目前已经在 ES-Next Stage 4 阶段。 直接上例子&#xff0c;比如我们需要按顺序获取&#xff1a;产品数据>用户数据>…

jdeveloper优化:

D:\jdevstudio10133\jdev\bin\jdev.conf末尾加上下面的AddVMOption -Dsun.java2d.noddrawtrueAddVMOption -Dsun.java2d.ddoffscreenfalse 转载于:https://www.cnblogs.com/sprinng/p/4780112.html

linux make java版本,告诉make是否在Windows或Linux上运行

更新请阅读这个类似但更好的答案&#xff1a;https&#xff1a;//stackoverflow.com/a/14777895/938111make (和 gcc )可以使用Cygwin或MinGW在MS-Windows上轻松安装 .正如ldigas所说&#xff0c; make 可以使用 UNAME:$(shell uname) 检测平台(命令 uname 也由Cygwin或MinGW安…

MPI多机器实现并行计算

最近使用一个系统的分布式版本搭建测试环境&#xff0c;该系统是基于MPI实现的并行计算&#xff0c;MPI是传统基于msg的系统&#xff0c;这个框架非常灵活&#xff0c;对程序的结构没有太多约束&#xff0c;高效实用简单&#xff0c;下面是MPI在多台机器上实现并行计算的过程。…

Jenkins_获取源码编译并启动服务(二)

一、创建Maven项目二、设置SVN信息三、设置构建触发器四、设置Maven命令五、设置构建后发邮件信息&#xff08;参考文章一&#xff09;六、设置构建后拷贝文件到远程机器并执行命令来自为知笔记(Wiz)

php 判断页面加载完,所有ajax执行完且页面加载完判断

jquery ajax&load 方法导致 js效果不显示或显示后由于加载后ajax 重新布局页面导致效果错误。解决思路&#xff1a;需要在ajax get post 或 load 等执行完后再去执行方法就不会由于他们没执行完导致的最终错误。那么首先看load 方法定义&#xff1a;jQuery ajax - load() 方…