Visual Studio 中的 Build Solution,Rebuild Solution 和 Clean Solution 有什么区别?
什么时候适当使用这些中的每一个?
(链接指向devenv.exe命令行开关,但它们与菜单项的作用相同。)
构建解决方案:编译已更改的代码文件(DLL 和 EXE)。
重建:删除所有已编译的文件并再次编译它们,无论代码是否已更改。
清洁解决方案:删除所有已编译的文件(DLL 和 EXE 文件)。
你可以看到这个 YouTube 视频( Visual Studio Build vs. Rebuild vs. Clean(带答案的 C#面试问题) )我已经证明了这些差异,下面是可视化表示,可以帮助你更详细地分析它们。
Rebuild 与(Clean + Build)之间的区别,因为这周围似乎也存在一些混乱:
不同之处在于每个项目的构建和清理顺序的发生方式。假设您的解决方案有两个项目,“proj1” 和 “proj2”。如果你进行重建,它将采用 “proj1”,清理(删除)“proj1” 的编译文件并构建它。之后它将采用第二个项目 “proj2”,清理 “proj2” 的编译文件并编译 “proj2”。
但是如果你做 “干净” 并构建 “,它将首先删除所有已编译的文件”proj1“和”proj2“,然后它将首先构建”proj1“,然后是”proj2“。
取自此链接 :
构建意味着仅编译和链接自上次构建以来已更改的源文件,而重建意味着编译和链接所有源文件,无论它们是否更改。构建是正常的事情并且更快。有时,项目目标组件的版本可能会失去同步,并且必须进行重建才能使构建成功。在实践中,您永远不需要清洁。