MSBuild扩展包压缩文件夹和子文件夹

Man*_*eja 1 msbuild msbuildcommunitytasks

我必须压缩我的文件夹和子文件夹使用MSbuild,我正在查看MSBuild扩展包,并尝试了这一点

 <ItemGroup>
  <ZipFiles Include="\Test\Web\**\*.*" >
    <Group>Release</Group>
  </ZipFiles>
 </ItemGroup>



 <MSBuild.ExtensionPack.Compression.Zip TaskAction="Create" CompressFiles="@(ZipFiles)" ZipFileName="$(WorkingDir)%(ZipFiles.Group).zip"/>
Run Code Online (Sandbox Code Playgroud)

当我这样做时,它只是将所有文件添加到root,而不是将其添加到zip文件中的特定子文件夹中.

我错过了什么,请有人帮忙.

Jul*_*rau 11

您需要提供RemoveRoot属性,此属性设置要从压缩文件路径中删除的根.(更多信息)

<ItemGroup>
  <ZipFiles Include="\Test\Web\**\*.*" >
    <Group>Release</Group>
  </ZipFiles>
</ItemGroup>

<MSBuild.ExtensionPack.Compression.Zip 
                        TaskAction="Create" 
                        CompressFiles="@(ZipFiles)" 
                        ZipFileName="$(WorkingDir)%(ZipFiles.Group).zip"
                        RemoveRoot="\Test\Web"/>
Run Code Online (Sandbox Code Playgroud)