msbuild 复制具有相同文件夹名称的整个文件夹
msbuild copy entire folder with same folder name
我正在尝试复制位于 TFS 不同位置的整个文件夹。
我有以下内容:
<Target Name="BuildControles">
<ItemGroup>
<Controles Include="$(BUILD_SOURCESDIRECTORY)\ABC\FOLDERB\*.*" />
<Controles Include="$(BUILD_SOURCESDIRECTORY)\joe\bloe\FOLDERA\*.*" />
</ItemGroup>
<Copy SourceFiles="@(Controles)" DestinationFiles="@(Controles->'$(OutDir)metadata\[FOLDERA OR FOLDER B]\%(Filename)%(Extension)')" />
</Target>
我需要将 ItemGroup 中指定的那些文件夹(FOLDERA 和 FOLDERB)复制到位于 "metadata" 文件夹下的特定路径,所以我最后得到了:
..metadata\FOLDERA..
..metadata\FOLDERB..
用 %(Directory)、%(RecursiveDir) 或 %(RelativeDir) 尝试了很多不同的事情,但找不到方法。
请客气点,我刚开始使用 MsBuild :)
在 msbuild 中,您可以向项目添加元数据,这些元数据基本上是附加到项目的属性,您可以使用 %() 语法引用这些属性。这似乎适合你在这里想要的东西:
<ItemGroup>
<Controles Include="$(BUILD_SOURCESDIRECTORY)\ABC\FOLDERB\*.*" >
<Dest>FOLDERB</Dest>
</Controles>
<Controles Include="$(BUILD_SOURCESDIRECTORY)\joe\bloe\FOLDERA\*.*">
<Dest>FOLDERA</Dest>
</Controles>
</ItemGroup>
<Copy SourceFiles="@(Controles)"
DestinationFiles="@(Controles->'$(OutDir)metadata\%(Dest)\%(Filename)%(Extension)')" />
我正在尝试复制位于 TFS 不同位置的整个文件夹。
我有以下内容:
<Target Name="BuildControles">
<ItemGroup>
<Controles Include="$(BUILD_SOURCESDIRECTORY)\ABC\FOLDERB\*.*" />
<Controles Include="$(BUILD_SOURCESDIRECTORY)\joe\bloe\FOLDERA\*.*" />
</ItemGroup>
<Copy SourceFiles="@(Controles)" DestinationFiles="@(Controles->'$(OutDir)metadata\[FOLDERA OR FOLDER B]\%(Filename)%(Extension)')" />
</Target>
我需要将 ItemGroup 中指定的那些文件夹(FOLDERA 和 FOLDERB)复制到位于 "metadata" 文件夹下的特定路径,所以我最后得到了:
..metadata\FOLDERA..
..metadata\FOLDERB..
用 %(Directory)、%(RecursiveDir) 或 %(RelativeDir) 尝试了很多不同的事情,但找不到方法。
请客气点,我刚开始使用 MsBuild :)
在 msbuild 中,您可以向项目添加元数据,这些元数据基本上是附加到项目的属性,您可以使用 %() 语法引用这些属性。这似乎适合你在这里想要的东西:
<ItemGroup>
<Controles Include="$(BUILD_SOURCESDIRECTORY)\ABC\FOLDERB\*.*" >
<Dest>FOLDERB</Dest>
</Controles>
<Controles Include="$(BUILD_SOURCESDIRECTORY)\joe\bloe\FOLDERA\*.*">
<Dest>FOLDERA</Dest>
</Controles>
</ItemGroup>
<Copy SourceFiles="@(Controles)"
DestinationFiles="@(Controles->'$(OutDir)metadata\%(Dest)\%(Filename)%(Extension)')" />