visual-studio - 如何在 Visual Studio 中完全清理 bin 和 obj 文件夹?

标签 visual-studio msbuild

如果右键单击文件夹,您将看到“清理”菜单项。我认为这会清理(删除) obj 和 bin 目录。 然而,据我所知,它没有任何作用。 还有别的办法吗? (请不要告诉我转到 Windows 资源管理器或 cmd.exe) 我想删除 obj 和 bin 文件夹,以便我可以轻松地压缩整个文件。

最佳答案

正如其他人已经回应的那样,Clean 将删除构建生成的所有工件。但它会把其他一切抛在脑后。

如果您的 MSBuild 项目中有一些自定义项,这可能会带来麻烦并留下您认为应该删除的内容。

您可以通过对 .*proj 进行简单更改来规避此问题,方法是将其添加到靠近末尾的位置:

<Target Name="SpicNSpan"
        AfterTargets="Clean">
    <RemoveDir Directories="$(OUTDIR)"/>
</Target>

这将删除当前平台/配置的 bin 文件夹中的所有内容。

------编辑 基于 Shaman's answer 的轻微演变下面(分享选票并给他一些)

<Target Name="SpicNSpan"  AfterTargets="Clean">
    <!-- Remove obj folder -->
    <RemoveDir Directories="$(BaseIntermediateOutputPath)" />
    <!-- Remove bin folder -->
    <RemoveDir Directories="$(BaseOutputPath)" />
</Target>

---- 使用 xDisruptor 中的部分再次编辑但我删除了 .vs 删除,因为这在 .gitignore (或等效文件)中会更好

针对 VS 2015 进行了更新。

<Target Name="SpicNSpan" AfterTargets="Clean"> <!-- common vars https://msdn.microsoft.com/en-us/library/c02as0cs.aspx?f=255&MSPPError=-2147217396 -->
     <RemoveDir Directories="$(TargetDir)" /> <!-- bin -->
     <RemoveDir Directories="$(ProjectDir)$(BaseIntermediateOutputPath)" /> <!-- obj -->
</Target>

如果您有多个项目需要将其推进,他还提供了一个很好的建议,使任务更易于部署和维护。

如果您投票这个答案,请务必同时投票。

关于visual-studio - 如何在 Visual Studio 中完全清理 bin 和 obj 文件夹?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1088593/

相关文章:

asp.net - 指定 Azure 应用服务构建的 MSBuild 版本

msbuild - MSBuild 中的 VCBuild 任务 - 更改输出路径

visual-studio - TFS分支权限

visual-studio - Visual Studio 中的字符串到函数名称

visual-studio - 创建适用于 Windows 7/64 位的 XLL Excel 插件(在 Windows XP/32 上交叉编译)

c++ - 如何在 vtk 中的 3D 表面渲染输出中获取 2D dicom 图像切片的位置

deployment - 将 MsBuild 包分解并部署为单独的 MsBuild 和 MsDeploy 命令

visual-studio - 在 Visual Studio 中同时运行两个项目

excel - 使用 MSBuild 更改 .xla 文件

javascript - 从 MSBuild SonarQube Runner Analysis 中删除单个 JavaScript 文件