【问题标题】:Avoiding CopyFilesToOutputDirectory build step避免 CopyFilesToOutputDirectory 构建步骤
【发布时间】:2012-04-19 02:03:06
【问题描述】:

在 Visual Studio 2010 中使用我的 C# 项目时,我注意到 msbuild 编译到 \obj 目录,然后将文件复制到真正的输出目录:

CopyFilesToOutputDirectory:
Copying file from "obj\x86\Debug\Manager.exe" to "bin\Debug\Manager.exe".

没有自定义的 msbuild 脚本,都是 Visual Studio 的默认设置。有没有办法让它直接构建到 bin\Debug\Manager.exe;绕过“CopyFilesToOutputDirectory”步骤?

【问题讨论】:

    标签: c# visual-studio msbuild


    【解决方案1】:

    我只是想知道你为什么想要那个。没有简单的方法,因为在编译程序集(可执行文件和库)时默认使用 obj 文件夹。只有当它成功时,输出才会被复制到 bin 文件夹中。这就是为什么 Visual Studio 可以成功运行从 bin 运行的最后一个成功构建。所以本质上需要有 obj 文件夹。您可以通过查看this link 来扩展构建机制,使用此构建器而不是依赖于默认构建器来进行一些更改和调整

    【讨论】:

    • 原因是当我禁用“复制本地”时构建变得更快,我怀疑使用这样的选项可以避免另一个文件复制;因此加快了构建速度。
    • 嗯,但是您在这里尝试调整的是 Visual Studio 的工作方式。我会说不要
    • 默认情况下只会复制更新的文件,这样有助于更快地完成复制任务。
    【解决方案2】:

    不,没有,反正也没有。因为 obj 文件夹在构建期间保存临时(未链接)文件。

    更多阅读:What are the obj and bin folders (created by Visual Studio) used for? 在这里:VisualStudio: How to save the obj folder somewhere else

    【讨论】:

      猜你喜欢
      • 2018-12-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-01
      • 1970-01-01
      • 2012-08-27
      相关资源
      最近更新 更多