繁体   English   中英

在Visual Studio项目中,obj / debug是一个临时位置吗?

[英]Is obj/debug in a VisualStudio project, a temporary location?

简而言之,我有一个单独的WCF VisualStudio项目,用于编译CLient和Contract dll。 一旦我使用MS-BUILD(命令行)构建了项目,我就有了一个构建后的nant任务,可以将Client和Contract dll复制到另一个位置。

现在,对我而言,从obj / Debug文件夹中选择这些dll更加容易(因为它们仅具有CLient和Contract dll,而没有它们的依赖项)。

但是我听说obj / Debug文件夹是临时的..我们需要依靠bin / Debug来获取dll。

是否有必要从bin / debug而不是obj / Debug中拾取它,为什么?

obj \\ Debug的角色是MSBuild的未记录实现细节。 之所以存在,是因为MSBuild喜欢根据项目设置有条件地复制文件。 确切地说,确切的规则很复杂,您只能通过研究framework目录中的.targets文件来获得洞察力。 它们本身高度依赖于您定位的.NET版本。

如果您真的想知道是什么使它滴答作响,那么从obj \\ Debug复制文件,然后看看会引起什么。 请注意,这可能会在创建项目后很长时间发生,因此当构建失败或生成错误文件时,将永远存在FUD强制转换。 如果这听起来不太奏效,那就不好了,那就避免破坏保修并从项目的输出目录中复制。 bin \\ Debug和bin \\ Release默认情况下。 如果产生了问题,那么至少您可以在SO处提出有关此问题的问题。

是。 您应该从bin/Debug或MSBuild上下文中的变量OutputPath提取二进制文件,

http://msdn.microsoft.com/en-us/library/bb629394.aspx

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM