Visual Studio中的Build Solution,Rebuild Solution和Clean Solution有什么区别?在Visual Studio中构建解决方案,重建解决方案和清理解决方案的区别?
什么时候适合使用其中的每一个?
Visual Studio中的Build Solution,Rebuild Solution和Clean Solution有什么区别?在Visual Studio中构建解决方案,重建解决方案和清理解决方案的区别?
什么时候适合使用其中的每一个?
从this link摘自:
构建意味着编译和链接只有自上次生成后发生变更 源文件,而重建 指编制,也不管他们是否 改变 文件链接,所有的源或不。建立是正常的 要做的事情,速度更快。有时 版本的项目目标 组件可能会失去同步, 重建是必要的,使生成 成功。在实践中,你永远不需要 需要清洁。
[这是一个很好的帖子,详情](http://conceptf1.blogspot.com/2013/11/visual-studio-clean-build-and-rebuild-solution.html) – 2013-11-21 08:39:05
链接?我认为一个DLL的概念,即动态链接库,是在运行时链接? – 2014-03-21 07:46:48
“在实践中你永远不需要清洁”< - 我在这一个叫BS。 – piers7 2016-02-23 06:32:54
构建解决方案将构建解决方案中已更改的任何项目。无论如何,重建都会构建所有项目,干净的解决方案会删除所有临时文件,确保下一次构建完成。
构建解决方案 - 构建任何已更改文件的程序集。如果程序集没有更改,则不会重新构建。也不会删除任何中间文件。
最常用。
重建解决方案 - 重建所有程序集而不考虑更改,但留下中间文件。
当您注意到Visual Studio未将您的更改合并到最新程序集中时使用。有时Visual Studio会犯错误。
清理解决方案 - 删除所有中间文件
也不管变化
当所有不使用的重建所有组件和您需要清洁的一切行动,并重新开始。
Clean不会构建。 – 2010-06-22 18:22:49
@Jon Skeet - 每天学习新东西。我会发誓它做了重建。我想我的记忆并不总是像我想的那样可靠。 – 2010-06-22 18:25:08
的利益给予(该链接到devenv.exe的命令行开关,但它们与菜单项相同。)
我只是想到了重建作为执行清洁第一,然后是构建。也许我错了......评论?
这没有upvotes(至今),并根据文档(请参阅乔恩的答案中的链接),这是完全正确的。 – Tod 2012-09-28 17:57:40
我不这么认为。我有一种情况,在做一个干净的解决方案,其次是生成解决方案的作品,但做一个重建解决方案失败。这是一个新创建的解决方案,有两个项目(一个依赖于另一个)。 – Cthutu 2013-05-28 19:56:15
@Cthutu看到Shivprasad的答案为细节,在这里有所作为。重建清理,然后一次构建每个单独的项目,而运行“清理”首先会立即清除所有内容,然后“构建”会立即构建。我已经运行了干净/构建顺序的这种变化使编译和编译不同的实例。 – Sean 2013-10-15 19:29:56
构建解决方案:编译已更改的代码文件(DLL和EXE)。
重建:删除所有已编译的文件并再次编译它们,而不管代码是否已更改。
干净的解决方案:删除所有编译的文件(DLL和EXE文件)。
你可以看到我已经证明了差异,下面是可视化表示,这将帮助你分析相同的详细此YouTube视频(Visual Studio Build vs. Rebuild vs. Clean (C# interview questions with answers))。
之间的差异与重建(清洁+版本),因为似乎有一些解决这个困惑,以及:
的区别在于构建和清洁顺序发生,每路项目。假设您的解决方案有两个项目,“proj1”和“proj2”。如果你做了重建,它将采用“proj1”,清理(删除)“proj1”的编译文件并构建它。之后,它将采用第二个项目“proj2”,清理“proj2”的编译文件并编译“proj2”。
但是,如果你做了一个“清理”和“构建”,它将首先删除“proj1”和“proj2”的所有编译文件,然后它将首先构建“proj1”,然后是“proj2”。
谢谢你解释为什么重建不总是工作,而且在构建之前我经常需要清理。 – 2014-01-21 19:11:01
是的,说明和第二张图非常有帮助和清晰。如果你可以修复“非法”流程图,那么“是”只能到一个地方,这会有所帮助。我真的不明白那个人想说什么,特别是在“重建”下的“Build ALL”。 – 2016-12-19 22:04:17
@JonCoombs是的,我不认为第一个流程图捕捉到了他在视频中所说的内容。我*想*我插入的图像是Shivprasad所瞄准的。 – ruffin 2017-11-09 18:58:55
生成溶液只建立那些已在溶液中改变的项目,并且不影响该没有改变组件,
重建第一清洁,从溶液中的所有组件,然后生成整个解决方案无论做什么改变。
清洁,只是清理解决方案。
[重建清理项目与Clean + Build不同](https://stackoverflow.com/a/17781143/6655092) – JakeD 2017-06-06 15:52:30
构建解决方案 - 构建已更改文件的任何程序集。如果程序集没有更改,则不会重新构建。也不会删除任何中间文件。
重建解决方案将干净,然后从头开始构建解决方案,忽略什么,它的完成之前
清理解决方案将删除所有已编译的文件(即EXE和dll)从斌/ OBJ目录。
构建解决方案 - 构建解决方案将构建您的应用程序,并构建具有任何文件更改的项目数。它并不清除任何现有的二进制文件,只是替换bin或obj文件夹中的更新程序集。
重建解决方案 - 重建解决方案将构建您的整个应用程序,同时构建您的解决方案中的所有项目并清理它们。在构建它之前,清除bin和obj文件夹中的所有二进制文件。
Clean Solution - 干净的解决方案只是清除bin和obj文件夹中的所有二进制文件。
生成解决方案
这将执行增量构建。换句话说,它只会构建已更改的代码文件。如果他们没有改变那些文件将不会被触及。
重建解决方案
这将删除所有当前编译的文件(即EXE和DLL)和将建立一切从头开始,无论是否有文件或不更改代码。
干净的解决方案菜单
此菜单将删除所有编译的文件(即EXE和dll)从斌/ OBJ目录。
重建=清洁+构建
另见http://stackoverflow.com/questions/1247457/difference-between-rebuild-and-clean-build-in-visual-studio-2008 – Greg 2010-06-22 18:29:15
[这里是一个很好的帖子,详细介绍](http://conceptf1.blogspot.com/2013/11/visual-studio-clean-build-and-rebuild-solution.html) – 2013-11-21 08:36:51
重建和清洁一样吗? – 2015-04-14 15:22:22