Faw*_*awa 1081 visual-studio
Visual Studio中的Build Solution,Rebuild Solution和Clean Solution有什么区别?
什么时候适当使用这些中的每一个?
Jon*_*eet 878
(链接指向devenv.exe命令行开关,但它们与菜单项的作用相同.)
Shi*_*ala 428
构建解决方案:编译已更改的代码文件(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".
Mat*_*nes 144
取自此链接:
构建意味着仅编译和链接自上次构建以来已更改的源文件,而重建意味着编译和链接所有源文件,无论它们是否更改.构建是正常的事情并且更快.有时,项目目标组件的版本可能会失去同步,并且必须进行重建才能使构建成功.在实践中,您永远不需要清洁.
Jus*_*ner 41
构建解决方案 - 构建已更改文件的所有程序集.如果程序集没有更改,则不会重新构建.也不会删除任何中间文件.
最常用的.
重建解决方案 - 无论更改如何都重建所有程序集,但保留中间文件.
当您注意到Visual Studio未将更改合并到最新程序集中时使用.有时,Visual Studio确实会出错.
清洁解决方案 - 删除所有中间文件并重建所有程序集,无论更改如何
当所有其他方法都失败时使用,您需要清理所有内容并重新开始.
Ken*_*rds 13
我只想到Rebuild首先执行Clean,然后是Build.也许我错了......评论?
小智 13
构建解决方案 - 构建已更改文件的所有程序集.如果程序集没有更改,则不会重新构建.也不会删除任何中间文件.
重建解决方案将清理,然后从头开始构建解决方案,忽略之前完成的任何事情
Clean Solution将从bin/obj目录中删除所有已编译的文件(即EXE和DLL).
构建解决方案 - 构建解决方案将构建您的应用程序,并构建具有任何文件更改的项目数.并且它不会清除任何现有的二进制文件,只是替换bin或obj文件夹中的更新程序集.
重建解决方案 - 重建解决方案将构建您的整个应用程序,并通过清理它们来构建解决方案中的所有项目.在构建之前,它会清除bin和obj文件夹中的所有二进制文件.
清洁解决方案 - 清洁解决方案只是清除bin和obj文件夹中的所有二进制文件.
我认为人们遗漏的一件主要事情是 Build 和 Clean 都是基于 Visual Studio 对您的项目/解决方案的知识执行的任务。我看到很多抱怨 Clean 不起作用或留下剩余文件或不值得信赖,而实际上,您说它不值得信赖的原因实际上使它更值得信赖。
Clean 只会删除(清理)Visual Studio 或编译器本身实际上创建的文件和/或目录。如果您复制自己的文件或从外部工具或源创建的文件/文件夹结构,则 Visual Studio 不会“知道它们存在”,因此不应接触它们。
您能想象 Clean 操作是否基本上执行了 "del *.*" 吗?这可能是灾难性的。
Build对更改的或必要的项目执行编译。
无论更改或需要什么,重建都会执行编译。
Clean会删除它过去创建的文件/文件夹,但会留下与最初无关的任何内容。
我希望这能详细说明并有所帮助。
我有一个空白解决方案BuildRebuildClean
和三个类库Models
, Repository
, Notification
.
我在类库中使用Models
和。Repository
Notification
然后:
Models
库项目中的某些代码,则构建解决方案。在下面的屏幕截图中,参考 DLL 的时间戳,EXE 在Models
和Notification
库中更新。BuildRebuildClean
。它所做的是删除所有程序集、EXE 和引用文件以再次编译。 归档时间: |
|
查看次数: |
316887 次 |
最近记录: |