我的 MSBuild 脚本中有以下任务:
<Target Name="ZipStates">
<Message Text="CREATING ZIP FOR %(StateSet.Name)" />
<CreateItem Include="$(StagingArea)\v$(VersionString)\States\%(StateSet.Name)\v$(VersionString)%20%(StateSet.Abbreviation)XTend\**\*.*" >
<Output ItemName="ZipFiles" TaskParameter="Include"/>
</CreateItem>
<MSBuild.Community.Tasks.Zip Files="@(ZipFiles)"
ZipFileName="$(StagingArea)\v$(VersionString)\States\%(StateSet.Name)\v$(VersionString)%(StateSet.Abbreviation).zip" />
</Target>
<ItemGroup>
<StateSet Include="AK">
<Name>Alaska</Name>
<Abbreviation>AK</Abbreviation>
</StateSet>
<StateSet Include="FL">
<Name>Florida</Name>
<Abbreviation>FL</Abbreviation>
</StateSet>
<StateSet Include="LA">
<Name>Louisiana</Name>
<Abbreviation>LA</Abbreviation>
</StateSet>
</ItemGroup>
输出如下所示:
ZipStates:为阿拉斯加创建 ZIP 为佛罗里达创建 ZIP 为路易斯安那创建 ZIP 创建 zip 文件“C:\StagingArea\v5_6_0\States\Alaska\v5_6_0AK.zip”。
似乎当我以这种方式执行批处理时,任务中的每个命令都会针对项目组批处理中的每个节点执行,然后继续执行下一步。我最终得到的是 3 个包含相同文件的 zip。
任何人都知道我可以如何以不同的方式做到这一点?