为什么复制任务项不能在我的msbuild脚本中工作?

时间:2011-05-30 04:18:02

标签: msbuild msbuild-task msbuild-4.0

我的msbuild脚本中有以下代码:

<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0" InitialTargets="Build">  
  <PropertyGroup>
    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>

    <SolutionName>CommTrac.Web\CommTrac.Web</SolutionName>
    <SolutionFileName>$(SolutionName).csproj</SolutionFileName>           
  </PropertyGroup>

  <Target Name="Build">
    <Message Text="Building the solution"/>
    <MSBuild Projects="$(SolutionFileName)" ContinueOnError="false" Properties="Configuration=$(Configuration)" />    
  </Target>
  <Target Name="CopyOutput" DependsOnTargets="Build">
    <ItemGroup>      
      <BinFolder Exclude="*.pdb" Include="$(ProjectDir)bin\**\*.*"/>
      <BuildOutputFolder Include="C:\BuildOutput" />
    </ItemGroup>
    <Message Text="Copying from directory: $(BinFolder)"/>
    <Copy  SourceFiles="$(BinFolder)" DestinationFolder="$(BuildOutputFolder)"/>
  </Target>
</Project>

由于某种原因,它不会将文件复制到我的输出目录。我尝试了所有类似的 我看到过与此问题类似的其他问题的解决方案。有人有什么想法吗?

1 个答案:

答案 0 :(得分:4)

BindFolder和BuildOutputFolder是项目,而不是属性。所以你需要使用@(BindFolder)和@(BuildOutputFolder)而不是'$'来引用它们。