Sdílet prostřednictvím


Jak: Vyčistit nové sestavení

Při čištění sestavení jsou odstraněny všechny soubory zprostředkujících a výstupní, ponechat pouze soubory projektu a komponenty.Ze souborů projektu a součást nové instance mezilehlých a výstupní soubory lze potom vytvořen.Knihovna běžné úkoly, které je součástí MSBuild zahrnuje Exec úkol, který můžete použít ke spuštění příkazů systému.Další informace o knihovně úkoly, viz Úloha MSBuild odkaz.

Vytvoření adresáře pro výstupní zboží.

Ve výchozím nastavení je soubor EXE, který je vytvořen při kompilaci projektu umístěna ve stejném adresáři jako soubory projektu a zdroje.Obvykle však výstup položky se vytvářejí v samostatném adresáři.

Vytvořit adresář pro výstupní zboží.

  1. Použití Property prvku definovat umístění a název adresáře.Například vytvořte adresář s názvem BuiltApp v adresáři, který obsahuje soubory projektu a zdroje:

    <builtdir>BuiltApp</builtdir>

  2. Použití MakeDir úkol vytvořit adresář, pokud adresář neexistuje.Příklad:

    <MakeDir Directories = "$(builtdir)"

    Condition = "!Exists('$(builtdir)')" />

Odebrání položky výstupu

Před k vytvoření nové instance zprostředkujících a výstupní soubory, můžete vymazat všechny předchozí instance zprostředkujících a výstupní soubory.Použití RemoveDir úloh z disku odstranit adresář a všechny soubory a adresáře, které obsahuje.

Odebrat adresář a všechny soubory obsažené v adresáři

  • Použití RemoveDir úloh odebrat adresář.Příklad:

    <RemoveDir Directories="$(builtdir)" />

Příklad

Následující kód například projekt obsahuje nový cíl, Clean, který používá RemoveDir úlohu odstranit adresář a všechny soubory a adresáře, které obsahuje.Také v tomto příkladu Compile cíl vytvoří samostatný adresář pro výstup zboží, které jsou odstraněny při sestavení je vyčistit.

Compileje definována jako výchozí cíl a proto použít automaticky neurčíte jiný cíl nebo cíle.Pomocí přepínače příkazového řádku /target zadat jiný cíl.Příklad:

msbuild <file name>.proj /target:Clean

/target Přepínače lze zkrátit na /t a můžete určit více než jeden cíl.Například použít cílové Clean potom cílové Compile, zadejte:

msbuild <file name>.proj /t:Clean;Compile

<Project DefaultTargets = "Compile"
    xmlns="https://schemas.microsoft.com/developer/msbuild/2003" >

    <PropertyGroup>
        <!-- Set the application name as a property -->
        <name>HelloWorldCS</name>

        <!-- Set the output folder as a property -->
        <builtdir>BuiltApp</builtdir>
    </PropertyGroup>

    <ItemGroup>
        <!-- Specify the inputs by type and file name -->
        <CSFile Include = "consolehwcs1.cs"/>
    </ItemGroup>

    <Target Name = "Compile">
        <!-- Check whether an output folder exists and create
        one if necessary -->
        <MakeDir Directories = "$(builtdir)" 
            Condition = "!Exists('$(builtdir)')" />

        <!-- Run the Visual C# compiler -->
        <CSC Sources = "@(CSFile)" 
            OutputAssembly = "$(BuiltDir)\$(appname).exe">
            <Output TaskParameter = "OutputAssembly"
                ItemName = "EXEFile" />
        </CSC>

        <!-- Log the file name of the output file -->
        <Message Text="The output file is @(EXEFile)"/>
    </Target>

    <Target Name = "Clean">
        <RemoveDir Directories="$(builtdir)" />
    </Target>
</Project>

Viz také

Referenční dokumentace

Úlohy Exec

MakeDir úloh

RemoveDir úloh

CSC úkolu

Koncepty

Nástroj MSBuild cíle