1

我无法理解这种行为:项目组直接放在项目标签下工作正常:

 <ItemGroup>
    <!-- Copy the Dev Config files -->  
<Robocopy Include="$(INETROOT)\private\CASI\Reporting\Config\Dev">
      <DestinationFolder>$(DevBranch)\Reporting</DestinationFolder>
      <FileMatch>*</FileMatch>
</Robocopy>

但是当作为子对象包含在目标中时,项目组不会被执行:

<!-- Create the Dev Branch -->
<Target Name="CreateDevBranch" AfterTargets="Build">
    <CreateItem Include="$(AppRoot)\**\*.*">
        <Output TaskParameter="Include" ItemName="CompileOutput" />
    </CreateItem>

<Copy SourceFiles="@(CompileOutput)" 
    DestinationFolder="$(DevBranch)\hello\%(RecursiveDir)"></Copy>
    <ItemGroup>
    <!-- Copy the Dev Config files -->  
<Robocopy Include="$(INETROOT)\private\CASI\Reporting\Config\Dev">
      <DestinationFolder>$(DevBranch)\Reporting</DestinationFolder>
      <FileMatch>*</FileMatch>
</Robocopy>

</Target>

奇怪的是复制操作有效,即使我评论复制操作,ItemGroup 操作仍然没有被执行

我想我在这里遗漏了一些概念

谢谢

4

1 回答 1

0

itemgroup 可能是空的,id 看看你创建的item group 有没有值?createitem 也是旧的 msbuild,并且使用 msbuild 3.5 取消了该任务。使用创建项目组

于 2013-01-12T13:27:35.853 回答