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ží.
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>