您知道,输出此的那个=>
------清理开始:项目:Foo.Bar,配置:调试任何CPU ------
===========清理:1成功,0失败,0跳过==== ======
它在清洗什么?
您知道,输出此的那个=>
------清理开始:项目:Foo.Bar,配置:调试任何CPU ------
===========清理:1成功,0失败,0跳过==== ======
它在清洗什么?
Answers:
输出目录-删除先前构建的代码。
它不会删除bin / obj目录本身(或它们下面的Debug / Release目录),而不会删除实际的.exe,.dll等文件。不幸的是,这使它对我通常用于清理输出目录的用处不大:当我想压缩源代码时。由于Clean操作不会执行此操作,因此我通常只直接删除bin和obj目录。
为什么不找自己呢?打开Microsoft.Common.Targets(位于%windir%\ Microsoft.NET下),您将看到如下部分:
<!--
============================================================
Clean
Delete all intermediate and final build outputs.
============================================================
-->
<PropertyGroup>
<CleanDependsOn>
BeforeClean;
CleanReferencedProjects;
UnmanagedUnregistration;
CoreClean;
CleanPublishFolder;
AfterClean
</CleanDependsOn>
</PropertyGroup>
<Target
Name="Clean"
Condition=" '$(_InvalidConfigurationWarning)' != 'true' "
DependsOnTargets="$(CleanDependsOn)" />
继续阅读以准确了解每个子目标的功能。(当然,有些只是存根供用户覆盖)。
就个人而言,我喜欢看花哨的IDE背后有什么诡计。为此,我建议增加写入“输出”窗口的信息量。工具->选项->项目和解决方案->生成并运行-> MSBuild详细程度->从“最小”更改为“正常”或“详细”。
再次尝试执行Clean操作并立即查看输出!将您看到的与* .targets文件相关联是开始学习MSBuild的好方法。
它遍历您的输出目录,并删除其中的任何与构建相关的文件。
我认为您也可以通过转到以下项目的属性来配置它
配置属性->常规,在“清理扩展名”下