Postupy: Výběr souborů pro sestavení
Při sestavení projekt obsahuje několik souborů, můžete každý soubor zvlášť v souboru projekt nebo zahrnout všechny soubory do jednoho adresáře nebo vnořené sady adresářů lze použít zástupné znaky.
Určení vstupů
Položky představují vstupy pro sestavení.Další informace o zboží, viz Položky nástroje MSBuild.
Chcete-li soubory pro sestavení, musí být obsažena v seznamu položka MSBuildsouboru projekt . Více souborů lze přidat do seznamů položka buď jednotlivě včetně souborů nebo pomocí zástupných znaků zahrnout mnoho souborů najednou.
deklarovat položky jednotlivě
Použití Include atributy, které jsou podobné následující:
<CSFile Include="form1.cs"/>
– nebo –
<VBFile Include="form1.vb"/>
[!POZNÁMKA]
Položky vkolekce položkanejsou ve stejném adresáři jako soubor projekt , musíte zadat celé nebo relativní cesta na položka. Například: Include="..\..\form2.cs".
deklarovat více položek
Použití Include atributy, které jsou podobné následující:
<CSFile Include="form1.cs;form2.cs"/>
– nebo –
<VBFile Include="form1.vb;form2.vb"/>
Určení vstupů pomocí zástupných znaků
Můžete také použít zástupné znaky pro rekurzivně zahrnout všechny soubory nebo pouze určité soubory z podadresáře jako vstupy pro sestavení.Další informace o zástupných znaků naleznete v tématuPoložky nástroje MSBuild
Následující příklady jsou založeny na projekt , který obsahuje grafické soubory v následujících adresářích a podadresářích, s soubor projekt umístěný v adresáři projektu:
Project\Images\BestJpgs
Project\Images\ImgJpgs
Project\Images\ImgJpgs\Img1
Zahrnout všechny soubory s příponou JPG obrázky adresáře a podadresáře
Použít následující Include atribut:
Include="Images\**\*.jpg"
Zahrnout všechny soubory s příponou JPG počínaje "img"
Použít následující Include atribut:
Include="Images\**\img*.jpg"
Zahrnout všechny soubory s názvy ve formátu JPG "využívá" koncové adresářů
Použijte jeden z následujících Include atributy:
Include="Images\**\*jpgs\*.*"
– nebo –
Include="Images\**\*jpgs\*"
Předávání položek k úkolu
V souboru projekt , můžete použít @ () zápis úkoly jako vstup pro sestaveníurčit seznam celé položka .Seznam všech souborů samostatně nebo použít zástupné znaky, můžete použít tento zápis.
Použít všechny soubory Visual C# nebo Visual Basic jako vstupy
Použití Include následující atributy:
<CSC Sources="@(CSFile)">...</CSC>
– nebo –
<VBC Sources="@(VBFile)">...</VBC>
[!POZNÁMKA]
Je třeba použít zástupné znaky s položkami na jednotlivé vstupy sestavení; Nelze určit vstupy pomocí Sources atribut v MSBuild úkoly, jako například Csc nebo soubor Vbc. Následující příklad je platný v souboru projekt :
<CSC Sources="*.cs">...</CSC>
Příklad
Následující příklad kódu ukazuje projekt , který zahrnuje všechny vstupní soubory samostatně.
<Project DefaultTargets="Compile"
xmlns="https://schemas.microsoft.com/developer/msbuild/2003" >
<PropertyGroup>
<Builtdir>built</Builtdir>
</PropertyGroup>
<ItemGroup>
<CSFile Include="Form1.cs"/>
<CSFile Include="AssemblyInfo.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>
Následující příklad kódu používá zástupný znak zahrnout všechny soubory .cs.
<Project DefaultTargets="Compile"
xmlns="https://schemas.microsoft.com/developer/msbuild/2003" >
<PropertyGroup>
<builtdir>built</builtdir>
</PropertyGroup>
<ItemGroup>
<CSFile Include="*.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>
Viz také
Úkoly
Postupy: Vyloučení souborů ze sestavení