Postupy: Vyčištění 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 Referenční dokumentace úlohy nástroje MSBuild.
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ží.
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>
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>