2010-08-27 32 views
3

在我的csproj的OutputPath設置爲以下幾點:OutputPath設置爲bin x86 release,但在msbuilding時顯示爲obj x86 release?

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' "> 
<DefineTrace>true</DefineTrace> 
<OutputPath>bin\x86\Release\</OutputPath> 
.... 
</PropertyGroup> 
在我的惡性腳本

,我有這樣的:

<msbuild project="${demo.solution}"> 
<property name="Configuration" value="release"/> 
     <property name="OutputPath" value="${output.dir}"/> 
     <property name="Platform" value="x86"/> 
</msbuild> 

爲什麼日誌顯示該DemoProject.dll被複制從obj \ x86 \ release?

....

[的msbuild]項目 「Demo.sln」(1)正在建立 「DemoProjec1.vbproj」(3)在節點0(默認目標)。

[MSBuild的來自複製文件 「OBJ \ 86 \發佈\ DemoProjec1.dll」 爲$ {output.dir} \ DemoProjec1.dll」

[的MSBuild] DemoProjec1 - > $ {} output.dir \ DemoProjec1.dll

[的msbuild]完成建築工程 「DemoProjec1.vbproj」(缺省目標)。

....

某種方式從obj中的DemoProject.dll是相比DemoProject尺寸不同.dll從bin

回答

2

obj\x86\release是用於發佈配置的IntermediateOutputPath

您的項目編譯在中間目錄中,然後將結果文件複製到您的輸出目錄中。在您的Nant文件中,您覆蓋OutputPath${output.dir},因此您的文件從obj\x86\release複製到${output.dir}

+0

感謝您的詳細回覆madgnome。我看到我錯了。但是我仍然不明白輸出文件的大小與obj和bin的大小有什麼不同。它發生在一些項目和一些特定的輸出文件中。 – 2010-09-01 01:01:45

相關問題