Sdílet prostřednictvím


Jak: vyloučení souborů ze sestavení

V souboru projektu lze zahrnout všechny soubory v jednom adresáři nebo vnořené sady adresářů jako vstupy pro sestavení pomocí zástupných znaků.Však může být jeden soubor v adresáři nebo v vnořené sady adresářů, které nechcete zahrnout jako vstup pro sestavení jednoho adresáře.Tento soubor nebo adresář můžete explicitně vyloučit ze seznamu vstupů.V projektu, který chcete zahrnout za určitých podmínek může být také soubor.Můžete explicitně deklarovat podmínky, za kterých je soubor součástí sestavení.

Vyloučení souboru nebo adresáře z vstupy pro sestavení

Položky jsou seznamy vstupní soubory pro sestavení.Položky, které chcete zahrnout jsou deklarovány samostatně nebo jako skupiny pomocí Include atribut.Příklad:

<CSFile Include="Form1.cs"/>
<CSFile Include ="File1.cs;File2.cs"/>
<CSFile Include="*.cs"/>
<JPGFile Include="Images\**\*.jpg"/>

Pokud použijete zástupné znaky zahrnout všechny soubory v jednom adresáři nebo vnořené sady adresářů jako vstupy pro sestavení, může být jeden nebo více souborů v adresáři nebo v jednom adresáři vnořené sady adresářů, které nechcete zahrnout.Vyloučit položku ze seznamu položek, použijte Exclude atribut.

Zahrnout všechny soubory .cs nebo .vb kromě Form2

  • Použijte jeden z následujících Include a Exclude atributy:

    <CSFile Include="*.cs" Exclude="Form2.cs"/>
    

    -nebo-

    <VBFile Include="*.vb" Exclude="Form2.vb"/>
    

Zahrnout všechny soubory CS nebo VB, s výjimkou formulář2 a Form3

  • Použijte jeden z následujících Include a Exclude atributy:

    <CSFile Include="*.cs" Exclude="Form2.cs;Form3.cs"/>
    

    -nebo-

    <VBFile Include="*.vb" Exclude="Form2.vb;Form3.vb"/>
    

Zahrnout všechny soubory s příponou JPG obrázky adresáře kromě adresáře rozhraní

  • Použít následující Include a Exclude atributy:

    <JPGFile
        Include="Images\**\*.jpg"
        Exclude = "Images\**\Version2\*.jpg"/>
    

    [!POZNÁMKA]

    Musíte zadat cestu pro oba atributy.Můžete použít absolutní cestu k určení umístění souborů v Include atribut, musíte použít také v absolutní cestu Exclude atribut; Pokud použijete relativní cestu v Include atribut, musíte použít také relativní cestu v Exclude atribut.

Vyloučení souboru nebo adresáři vstupy pro sestavení pomocí podmínek

Pokud existují položky, které chcete zahrnout, například v sestavení ladění, ale nikoli verzi sestavení, můžete použít Condition atribut určit podmínky, za nichž zahrnout položky.

Pouze ve verzi sestavení zahrnout soubor Formula.vb

  • Použití Condition podobná následující atribut:

    <Compile
        Include="Formula.vb"
        Condition=" '$(Configuration)' == 'Release' " />
    

Příklad

Následující příklad kódu vytvoří projekt se všemi .cs soubory v adresáři s výjimkou Form2.cs.

<Project DefaultTargets="Compile"
    xmlns="https://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>

Viz také

Úkoly

Jak: Vyberte soubory k sestavení

Koncepty

Nástroj MSBuild položky

Další zdroje

MSBuild