Vyloučení souborů ze sestavení
V souboru projektu můžete pomocí zástupných znaků zahrnout všechny soubory v jednom adresáři nebo vnořenou sadu adresářů jako vstupy pro sestavení. V adresáři nebo v jednom adresáři však může existovat jeden soubor v vnořené sadě adresářů, které nechcete zahrnout jako vstup pro sestavení. Tento soubor nebo adresář můžete explicitně vyloučit ze seznamu vstupů. V projektu může být také soubor, který chcete zahrnout pouze za určitých podmínek. Podmínky, za kterých je soubor součástí sestavení, můžete explicitně deklarovat.
Vyloučení souboru nebo adresáře ze vstupů sestavení
Seznamy položek jsou vstupní soubory sestavení. Položky, které chcete zahrnout, jsou deklarovány samostatně nebo jako skupina pomocí atributu Include
. Příklad:
<CSFile Include="Form1.cs"/>
<CSFile Include ="File1.cs;File2.cs"/>
<CSFile Include="*.cs"/>
<JPGFile Include="Images\**\*.jpg"/>
Pokud jste pomocí zástupných znaků zahrnuli všechny soubory v jednom adresáři nebo vnořenou sadu adresářů jako vstupy pro sestavení, může existovat jeden nebo více souborů v adresáři nebo jednom adresáři v vnořené sadě adresářů, které nechcete zahrnout. Chcete-li vyloučit položku ze seznamu položek, použijte Exclude
atribut.
Zahrnutí všech souborů .cs nebo .vb s výjimkou form2
Použijte jeden z následujících
Include
atributůExclude
:<CSFile Include="*.cs" Exclude="Form2.cs"/>
nebo
<VBFile Include="*.vb" Exclude="Form2.vb"/>
Zahrnutí všech souborů .cs nebo .vb s výjimkou formulářů Form2 a Form3
Použijte jeden z následujících
Include
atributůExclude
:<CSFile Include="*.cs" Exclude="Form2.cs;Form3.cs"/>
nebo
<VBFile Include="*.vb" Exclude="Form2.vb;Form3.vb"/>
Zahrnutí všech souborů .jpg do podadresářů adresáře Images s výjimkou souborů v adresáři Verze2
Použijte následující
Include
aExclude
atributy:<JPGFile Include="Images\**\*.jpg" Exclude = "Images\**\Version2\*.jpg"/>
Poznámka:
Musíte zadat cestu pro oba atributy. Pokud použijete absolutní cestu k určení umístění souborů v atributu
Include
, musíte také použít absolutní cestu v atributuExclude
. Pokud v atributuInclude
použijete relativní cestu, musíte také použít relativní cestu v atributuExclude
.
Vyloučení souboru nebo adresáře ze vstupů sestavení pomocí podmínek
Pokud existují položky, které chcete zahrnout, například do sestavení Ladění, ale ne sestavení vydané verze, můžete pomocí Condition
atributu určit podmínky, za kterých se má položka zahrnout.
Zahrnutí souboru Formula.vb pouze do buildů vydaných verzí
Condition
Použijte atribut podobný následujícímu:<Compile Include="Formula.vb" Condition=" '$(Configuration)' == 'Release' " />
Příklad
Následující příklad kódu sestaví projekt se všemi soubory .cs v adresáři s výjimkou Form2.cs.
<Project DefaultTargets="Compile"
xmlns="http://schemas.microsoft.com/developer/msbuild/2003" >
<PropertyGroup>
<builtdir>built</builtdir>
</PropertyGroup>
<ItemGroup>
<CSFile Include="*.cs" Exclude="Form2.cs"/>
<Reference Include="System.dll"/>
<Reference Include="System.Data.dll"/>
<Reference Include="System.Drawing.dll"/>
<Reference Include="System.Windows.Forms.dll"/>
<Reference Include="System.XML.dll"/>
</ItemGroup>
<Target Name="PreBuild">
<Exec Command="if not exist $(builtdir) md $(builtdir)"/>
</Target>
<Target Name="Compile" DependsOnTargets="PreBuild">
<Csc Sources="@(CSFile)"
References="@(Reference)"
OutputAssembly="$(builtdir)\$(MSBuildProjectName).exe"
TargetType="exe" />
</Target>
</Project>
Související obsah
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro