Sdílet prostřednictvím


Cílový prvek (MSBuild)

Obsahuje sadu úkolů pro MSBuild postupně provést.

<Target Name="Target Name"
        Inputs="Inputs"
        Outputs="Outputs"
        Returns="Returns"
        KeepDuplicateOutputs="true/false"
        BeforeTargets="Targets"
        AfterTargets="Targets"
        DependsOnTargets="DependentTarget"
        Condition="'String A' == 'String B'">
        Label="Label">
    <Task>... </Task>
    <PropertyGroup>… </PropertyGroup>
    <ItemGroup>… </ItemGroup>
    <OnError... />
</Target>

Atributy a elementy

Následující části popisují atributy, podřízené prvky a rodičovské prvky.

Atributy

Atribut

Description

Name

Požadovaný atribut.

Název cíle.

Condition

Nepovinný atribut.

Stav, který má být vyhodnocen.Pokud bude podmínka vyhodnocena jako false, cíl nebude spuštěn těla cíl nebo všechny cíle, které jsou nastaveny v DependsOnTargets atribut.Další informace o podmínkách naleznete v tématu Nástroj MSBuild podmínky.

Inputs

Nepovinný atribut.

Soubory, které tvoří vstupy do tohoto cíle.Více souborů jsou odděleny středníky.Časová razítka souborů budou porovnány s časová razítka souborů v Outputs k určení, zda Target je aktuální.Další informace naleznete v tématu Přírůstkové sestavení, Jak: vytvoření postupně a Nástroj MSBuild transformace.

Outputs

Nepovinný atribut.

Soubory, které uloží formulář do tohoto cíle.Více souborů jsou odděleny středníky.Časová razítka souborů budou porovnány s časová razítka souborů v Inputs k určení, zda Target je aktuální.Další informace naleznete v tématu Přírůstkové sestavení, Jak: vytvoření postupně a Nástroj MSBuild transformace.

Returns

Nepovinný atribut.

Sadu položek, které budou k dispozici k úkolům, které vyvolávají tento cíl, například úlohy nástroje MSBuild.Více cílů jsou odděleny středníky.Je-li mít cíle v souboru Returns atributy výstupy atributy se používají místo pro tento účel.

KeepDuplicateOutputs

Volitelný atribut typu Boolean.

Pokud true, více odkazů na stejnou položku v vrátí cíle jsou zaznamenány.Ve výchozím nastavení je tento atribut false.

BeforeTargets

Nepovinný atribut.

Seznam cílových názvů oddělených středníkem. Je-li zadán, označuje, že tento cíl má být spuštěna před zadaný cíl nebo cíle.Díky tomu Autor projektu rozšířit existující sady cílů bez jejich úprav přímo.Další informace naleznete v tématu Cíl sestavení objednávky.

AfterTargets

Nepovinný atribut.

Seznam cílových názvů oddělených středníkem.Je-li zadán, označuje, že tento cíl má být spuštěna po zadaný cíl nebo cíle.Díky tomu Autor projektu rozšířit existující sady cílů bez jejich úprav přímo.Další informace naleznete v tématu Cíl sestavení objednávky.

DependsOnTargets

Nepovinný atribut.

Cíle, které musí být provedeny před tento cíl mohou být provedeny nebo detekci závislosti nejvyšší úrovně může dojít.Více cílů jsou odděleny středníky.

Label

Nepovinný atribut.

Identifikátor, který lze identifikovat nebo objednat systémové a uživatelské prvky.

Podřízené elementy

Element

Description

Úloha

Vytvoří a spustí instance MSBuild úkolu.Cíl může být nula nebo více úkolů.

PropertyGroup

Obsahuje sadu uživatelem definované Property prvky.Spuštění v rozhraní.NET Framework 3.5, Target element může obsahovat PropertyGroup prvky.

ItemGroup

Obsahuje sadu uživatelem definované Item prvky.Spuštění v rozhraní.NET Framework 3.5, Target element může obsahovat ItemGroup prvky.Další informace naleznete v tématu Nástroj MSBuild položky.

PřiChybě

Způsobí, že jeden nebo více cílů, které mají provést, pokud ContinueOnError atribut je ErrorAndStop (nebo false) selhání úlohy.Může být nula nebo více OnError prvky v cíli.Pokud OnError prvky jsou k dispozici, musí být poslední prvky Target prvku.

Informace týkající ContinueOnError atributu naleznete v tématu Prvek Task (MSBuild).

Nadřazené elementy

Element

Description

Project

Požadovaný kořenový element MSBuild souboru projektu.

Poznámky

K provedení prvního cíle je určena za běhu.Cíle mohou záviset na ostatních cílů.Například cíl pro nasazení závisí na cíli pro kompilaci.MSBuild Stroj spouští v pořadí, v jakém jsou uvedeny v závislosti DependsOnTargets atribut zleva doprava.Další informace naleznete v tématu Nástroj MSBuild cíle.

Cíl je proveden pouze jednou během sestavení, i v případě, že více než jeden cíl má závislost na něm.

Pokud cíl je vynechán, protože jeho Condition je vyhodnocen jako atribut false, jej můžete stále provedeno, pokud je vyvolán v sestavení a jeho Condition je vyhodnocen jako atribut true v té době.

Před 4 MSBuild Target vráceny všechny položky, které byly zadány v Outputs atribut.Chcete-li to provést, bylo zaznamenávat položky v případě, že požadované úkoly v sestavení, je MSBuild.Protože neexistoval žádný způsob, jak určit, které cíle měl výstupů, které by vyžadovaly volající, MSBuild shromažďovány všechny položky ze všech Outputs ve všech vyvolat Targets.Tento zájemce měřítka problémy pro sestavení, které měly velký počet položek výstupní.

Pokud uživatel zadá Returns na libovolné Target prvku v projektu a potom pouze ty Targets, který jste Returns atribut zaznamenávat tyto položky.

A Target může obsahovat i Outputs atribut a Returns atribut.Outputsje používán s Inputs Chcete-li zjistit, zda je aktuální cíl.Returns, pokud je k dispozici, přepíše hodnota Outputs určit položky, které jsou vráceny volajícím.Pokud Returns neexistuje, pak Outputs bude k dispozici pro volající kromě ve výše popsaném případě.

Před MSBuild 4, kdykoli Target zahrnout více odkazů na stejnou položku v jeho Outputs, by se vykazovala tyto duplicitní položky.Velmi velké sestavení, která měla velký počet výstupů a mnoho vzájemné závislosti projektu, to by způsobilo velké množství paměti plýtvat, protože duplicitní položky nebyly žádné užívání.Když KeepDuplicateOutputs je atribut nastaven na true, se zaznamenávají tyto duplicity.

Příklad

Následující příklad kódu ukazuje Target element, který se vykoná Csc úkolu.

<Target Name="Compile" DependsOnTargets="Resources" Returns="$(TargetPath)">
    <Csc Sources="@(CSFile)"
          TargetType="library"
          Resources="@(CompiledResources)"
          EmitDebugInformation="$(includeDebugInformation)"
          References="@(Reference)"
          DebugType="$(debuggingType)" >
        <Output TaskParameter="OutputAssembly"
                  ItemName="FinalAssemblyName" />
    </Csc>
</Target>

Viz také

Koncepty

Nástroj MSBuild cíle

Odkaz na projekt MSBuild soubor schématu