我有一个MSBuild脚本,在其中我创建了一个源代码文件列表,如下所示:
<ItemGroup>
<ZipSourceFiles Include="Project1\**\*.*" Exclude="**\bin\**;**\obj\**;**\.svn\**" />
<ZipSourceFiles Include="Project2\**\*.*" Exclude="**\bin\**;**\obj\**;**\.svn\**" />
<ZipSourceFiles Include="Project3\**\*.*" Exclude="**\bin\**;**\obj\**;**\.svn\**" />
<ZipSourceFiles Include="Project4\**\*.*" Exclude="**\bin\**;**\obj\**;**\.svn\**" />
<ZipSourceFiles Include="MyApp.sln" />
</ItemGroup>
这样可行,但我不想每次都剪切和粘贴相同的排除模式,而是将其声明一次并重复使用。但是,我尝试将排除模式放入ItemList或将整个模式放入属性中都失败了。执行此操作的正确msbuild语法是什么?
答案 0 :(得分:2)
试试这个:
<PropertyGroup>
<ExcludePattern>**\bin\**;**\obj\**;**\.svn\**</ExcludePattern>
</PropertyGroup>
<ItemGroup>
<ZipSourceFiles Include="Project1\**\*.*" Exclude="$(ExcludePattern)" />
<ZipSourceFiles Include="Project2\**\*.*" Exclude="$(ExcludePattern)" />
<ZipSourceFiles Include="Project3\**\*.*" Exclude="$(ExcludePattern)" />
<ZipSourceFiles Include="Project4\**\*.*" Exclude="$(ExcludePattern)" />
<ZipSourceFiles Include="MyApp.sln" />
</ItemGroup>