Sdílet prostřednictvím


Nástroj MSBuild úkoly

Sestavení platformy je možnost spustit libovolný počet akcí během procesu sestavení.MSBuildpoužívá úlohy k provedení těchto akcí.Úkol je jednotka spustitelného kódu používaného v MSBuild k operacím atomovou sestavení.

Logika úkolu

MSBuild Formát souboru XML projektu nelze provést plně sestavení operace na vlastní, tak logiku úkolu musí být prováděny mimo soubor projektu.

Logika spuštění úlohy je implementována jako .NET třídy, která implementuje ITask definované v rozhraní Microsoft.Build.Framework oboru názvů.

Úlohy třídy také definuje vstupní a výstupní parametry k dispozici úkolu v souboru projektu.Všechny veřejné nastavitelné nestatické neabstraktní vlastnosti vystavené třída úloh je přístupná v souboru projektu umístěním odpovídající atribut se stejným názvem na úkol prvku.

Můžete napsat vlastní úkol pomocí vytváření spravované třídy, která implementuje ITask rozhraní.Další informace naleznete v tématu Úkol psaní.

Provádění úlohy ze souboru projektu

Před provedením úlohy v souboru projektu, je nutné nejprve mapování typu v sestavení, které implementuje úkol s názvem úkolu UsingTask prvku.Díky MSBuild vědět, kde hledat logiku spuštění úlohy, pokud nalezne v souboru projektu.

Spustit úlohu v MSBuild souboru projektu, vytvořte element s názvem úkolu jako podřízený Target prvku.Pokud úkol přijímá parametry, tyto jsou předány jako atributy elementu.

MSBuildpoložky seznamů a vlastnosti slouží jako parametry.Například následující kód volá MakeDir úkolů a nastaví hodnotu Directories vlastnost MakeDir rovna hodnotě objektu BuildDir vlastnosti deklarované v předchozím příkladu.

<Target Name="MakeBuildDirectory">
    <MakeDir
        Directories="$(BuildDir)" />
</Target>

Úkoly můžete také vrátit informace mohou být uloženy ve vlastnosti pro pozdější použití položky nebo souboru projektu.Například následující kód volá Copy úkolů a ukládá informace z CopiedFiles vlastnost výstup SuccessfullyCopiedFiles seznam položek.

<Target Name="CopyFiles">
    <Copy
        SourceFiles="@(MySourceFiles)"
        DestinationFolder="@(MyDestFolder)">
        <Output
            TaskParameter="CopiedFiles"
            ItemName="SuccessfullyCopiedFiles"/>
     </Copy>
</Target>

Součástí úkolů

MSBuildlodě s mnoha úkoly, jako kopie, který zkopíruje soubory, MakeDir, který vytváří adresáře, a Csc, které propojejí Visual C# zdrojové soubory kódu.Úplný seznam dostupných úkoly a informace o použití naleznete v Úloha MSBuild odkaz.

Změněné úkoly

MSBuildHledat úkoly na několika místech.První umístění je v souborech s příponou.OverrideTasks je uložen v adresáři rozhraní.NET Framework.Úkoly, které tyto soubory přepsat ostatní úkoly se stejnými názvy, včetně úkolů v souboru projektu.Druhé umístění je v souborech s příponou.Úkoly v adresáři rozhraní.NET Framework.Pokud úkol nebyl nalezen v některém z těchto umístění, je použit úkolu v souboru projektu.

Viz také

Koncepty

Úkol psaní

Nástroj MSBuild vložené úkoly

Další zdroje

Nástroj MSBuild koncepty

MSBuild