一般来说Rebuild=99%*(Clean+Build),效果在非常小的可能性下会不同,一般可以忽略。

Rebuild是对Solution下的所有项目,逐个进行 Clean+Build。不论文件更改与否

Clean+Build是对选中的项目(如果选中Solution的话,全部Clean之后,再全部Build)先执行Clean再执行Build。

一般不需要执行Clean。

Build只是针对有更改过的文件进行编译。而Rebuild会编译所有。

推荐用 Clean+Build 或者Build。
build   solution   ---编译解决方案,和build   “项目名”的不同之处很明显:一个解决方案可以包含多个项目,编译解决方案就是编译这个解决方案中的所有项目,而build   “项目名”就只是编译当前的项目 
至于rebuild,有过很多次这样的经历:把一个项目解决方案编译后,如果没有做过任何改动,点击build菜单命令就不会再编译,那怕你删除了原来编译生成的dll或exe文件,vs.net仍然会因为未检测到项目中有新的改动而拒绝编译,但点击rebuild,不管上次编译后有没有做过改动,vs.net都会重新编译。

来源:http://blog.csdn.net/dongdianjing/article/details/5836652

from:http://www.codeproject.com/Tips/624176/Build-solution-vs-Rebuild-solution-vs-Clean-soluti

I am not aware of a single day in my life when I have not clicked on the Build, Rebuild, or Clean menu of Visual Studio. Even though I use it on a daily basis or sometimes even on a minute to minute basis when my keyboard is high on coding, I am still not clear what exactly each one of these menus does. I had a very vague idea, but I wanted to be sure about the exact differences between them.

When I hunted for the differences what came out was surprising, below goes a detailed explanation of the same.

Build solution menu

This will perform an incremental build. In other words it will only build code files which have changed. If they have not changed those files will not be touched.

Rebuild solution menu

This will delete all currently compiled files (i.e., exe and DLLs) and will build everything from scratch, irrespective of if there is code change in the file or not.

Clean solution menu

This menu will delete all compiled files (i.e., EXE’s and DLL’s) from the bin/obj directory.

Now if you read the above three points I have discussed, you can conclude that:

Rebuild = Clean + Build

So the next question would be if you do a Rebuild and if you do Clean + Build, what is the difference?

The difference is the way the build and clean sequence happens for every project. Let’s say if your solution has two projects, proj1 and proj2. If you do a rebuild it will take proj1, clean (delete) the compiled files for proj1, and build it. After that it will take the second project proj2, clean the compiled files for proj2, and compile proj2.

But if you do a clean and build, it will first delete all compiled files for proj1 and proj2 and then it will build proj1 first, followed by proj2.

The below image explains the same in a more visual format.

VS中 build,rebuild,clean的更多相关文章

  1. Visual Studio 中 Build、Rebuild 、 Clean 之间的区别是什么?

    今天翻看c-sharpcorner技术网站看到了这样一篇小记,标题为:What Is The Difference Between Build, Rebuild And Clean In Visual ...

  2. Visual Studio 中 Build 和 Rebuild 的区别

    因为之前写的程序比较小,编译起来比较快,所以一直都没有太在意 Build 和 Rebuild 之间的区别,后来发现两个还是有很大不同. Build 只针对在上次编译之后更改过的文件进行编译,在项目比较 ...

  3. 如何在eclipse中使用mvn clean install

    1.在Maven项目或者pom.xml上右键——>Run As ——>“Maven Build...”或者Run Configuration——>“Maven Build” 2.在“ ...

  4. java项目中build path的设置

    右键点击项目新建文件libs 添加jtds  jar包引用本地动态链接库(dll)的设置方法 配置LibraryJRE的添加和更换  Java项目中build path的设置总结,包括JRE的添加和更 ...

  5. Android中build target,minSdkVersion,targetSdkVersion,maxSdkVersion概念区分

    Android中build target,minSdkVersion,targetSdkVersion,maxSdkVersion概念区分 标签: build targetminSdkVersiont ...

  6. Android中build target,minSdkVersion,targetSdkVersion,maxSdkVersion概念区分

    问题引入:   有一个下载功能,在Android 5.x设备上运行正常,Android 6.x上运行异常,现象是下载进度卡在0%.   问题排查发现,是sdk的target设置为23导致,修改为21则 ...

  7. eclipse中build path与Web Deployment Assembly的作用,区别

    转自:https://blog.csdn.net/heart_mine/article/details/79402792 以下内容只为做个笔记记录已下,有问题可以留言,欢迎补充. 今天在eclipse ...

  8. eclipse中maven install和build,clean

    eclipse插件,m2eclipse 1.maven install相当于maven原生的命令: mvn install 2.aven build是 m2eclipse这个插件自己创造的概念,需要你 ...

  9. Eclipse中Build Workspace 优化

    在开发中,发现eclipse 的 Build Workspace 很慢很慢,只要是由于验证js, css, xml 等等静态的文件导致. 我遇到的问题是,项目中有一个js文件很大,怎么都不能Build ...

随机推荐

  1. Z-Score数据标准化处理(python代码)

    #/usr/bin/python def Z_Score(data): lenth = len(data) total = sum(data) ave = float(total)/lenth tem ...

  2. BZOJ 3626 [LNOI2014]LCA ——树链剖分

    思路转化很巧妙. 首先把询问做差分. 然后发现加入一个点就把路径上的点都+1,询问的时候直接询问到根的路径和. 这样和原问题是等价的,然后树链剖分+线段树就可以做了. #include <map ...

  3. 学习 WebService 第四步:利用WSDL(URL)生成WebService客户端<初级>

    我用的是最简单的方法,利用jdk的命令wsimport -keep -p 包路径 -d 代码存放位置 WSDL网址 蓝色是命令,粉色是存放位置,橘色是URL C:\Program Files\IBM\ ...

  4. 反射+注解:excel2module

    package test.excelTest; import java.io.File; import java.io.FileInputStream; import java.lang.reflec ...

  5. Unity Microphone 录音时 检测声音大小

    刚开始以为只取录音时的最后一个sample来判断音量大小,发现都检测不到. 后来搜索了一下,原来需要取一段sample来判断,有的是这一段取平均值作为音量大小.我这里是取出一段sample中的峰值(p ...

  6. POJ3928 Ping pong

      Time Limit: 1000MS   Memory Limit: 65536KB   64bit IO Format: %lld & %llu Description N(3<= ...

  7. linux 下共享内存

    一.共享内存相关知识 所谓共享内存,就是多个进程间共同地使用同一段物理内存空间,它是通过将同一段物理内存映射到不同进程的 虚拟空间来实现的.由于映射到不同进程的虚拟空间中,不同进程可以直接使用,不需要 ...

  8. Linux 之 LNMP服务器搭建-MySQL

    LNMP服务器搭建-MySQL 参考教程:[千峰教育] 系统版本: CentOS 6.8 关闭防火墙和Selinux service iptables stop setenforce 0 安装mysq ...

  9. sort、dirname、添加环境变量、修改主机名、别名IP、静态路由

    1.split-按照指定行数或大小分割文件 -l:指定行数 -a:指定文件后缀长度 -d:使用数字作为后缀 -b:指定大小 # 以10行为单位对文件进行分割 split -l 10 /etc/init ...

  10. CDOJ_24 八球胜负

    8球是一种台球竞赛的规则.台面上有7个红球.7个黄球以及一个黑球,当然还有一个白球.对于本题,我们使用如下的简化规则:红.黄两名选手轮 流用白球击打各自颜色的球,如果将该颜色的7个球全部打进,则这名选 ...