Sdílet prostřednictvím


UsingTask – element (MSBuild)

Mapuje úlohu odkazovanou v elementu Task na sestavení, které obsahuje implementaci úkolu.

<Project><UsingTask>

Syntaxe

<UsingTask TaskName="TaskName"
    AssemblyName = "AssemblyName"
    TaskFactory = "ClassName"
    Condition="'String A'=='String B'" />

Poznámka:

Na rozdíl od vlastností apoložekchm prvkům se použije první UsingTask prvek, který se použije pro TaskName použití, bude na rozdíl od vlastností a položek použit. Chcete-li přepsat úkoly, je nutné definovat nový UsingTask před existujícím prvkem nebo zadat Override="true" v nové UsingTask.

Atributy a prvky

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

Atributy

Atribut Popis
Architecture Nepovinný atribut.

Určuje, že úloha musí běžet v procesu zadané bitness. Pokud aktuální proces nesplňuje požadavek, úloha se spustí v hostitelském procesu úkolu, který to dělá.

Podporované hodnoty jsou x86 (32bitová), x64 (64bitová) CurrentArchitecturea * (libovolná architektura).
AssemblyName AssemblyName Atribut nebo AssemblyFile atribut je povinný.

Název sestavení, které chcete načíst. Atribut AssemblyName přijímá sestavení se silným názvem, i když není vyžadováno silné pojmenování. Použití tohoto atributu je ekvivalentní načtení sestavení pomocí Load metody v .NET.

Tento atribut nelze použít, pokud AssemblyFile je použit atribut.
AssemblyFile AssemblyName Je vyžadován atribut nebo AssemblyFile atribut.

Cesta k souboru sestavení. Tento atribut přijímá úplné cesty nebo relativní cesty. Relativní cesty jsou relativní vzhledem k adresáři souboru projektu nebo cíl souboru, kde UsingTask je prvek deklarován. Použití tohoto atributu je ekvivalentní načtení sestavení pomocí LoadFrom metody v .NET.

Tento atribut nelze použít, pokud AssemblyName je použit atribut.
Override Nepovinný atribut.

Určuje, že tento UsingTask prvek by měl mít vyšší prioritu než jiné prvky definující stejný název úkolu. Pro název úkolu je povoleno pouze jedno přepsání. Přidáno v nástroji MSBuild 17.2.
Runtime Nepovinný atribut.

Určuje, že úloha musí běžet v modulu runtime rozhraní .NET Framework zadané verze. Pokud aktuální proces nesplňuje požadavek, úloha se spustí v hostitelském procesu úkolu, který to dělá.

Podporované hodnoty jsou NET (.NET Core a .NET 5 nebo vyšší), CLR2 (.NET Framework 3.5), CLR4 (.NET Framework 4.7.2 nebo vyšší) CurrentRuntimea * (jakýkoli modul runtime). Všimněte si, že nemůžete volat úlohy NET při spuštění msBuild rozhraní .NET Framework (CLR4) a nemůžete volat úlohy CLR2/CLR4 z .NET MSBuild (při spuštění dotnet build).
TaskFactory Nepovinný atribut.

Určuje třídu v sestavení, která je zodpovědná za generování instancí zadaného Task názvu. Uživatel může také zadat Task jako podřízený prvek, který objekt pro vytváření úloh přijímá a používá k vygenerování úkolu. Obsah objektu Task pro vytváření úloh je specifický. Výchozí TaskFactory hodnota je AssemblyTaskFactory, která načte úlohu do spuštěného procesu.
TaskName Požadovaný atribut.

Název úlohy, na který se má odkazovat ze sestavení. Pokud je možné nejednoznačnosti, měl by tento atribut vždy určovat úplné obory názvů. Pokud existují nejednoznačnosti, nástroj MSBuild zvolí libovolnou shodu, která by mohla vést k neočekávaným výsledkům.
Condition Nepovinný atribut.

Podmínka, která se má vyhodnotit. Další informace naleznete v tématu Podmínky.

Podřízené prvky

Element (Prvek) Popis
ParameterGroup Sada parametrů, které se zobrazí v úkolu, který je generován zadaným TaskFactory.
Úkol Data, která se předají k TaskFactory vygenerování instance úlohy.

Nadřazené prvky

Element (Prvek) Popis
Projekt Povinný kořenový prvek souboru projektu MSBuild.

Poznámky

Proměnné prostředí, vlastnosti příkazového řádku, vlastnosti na úrovni projektu a položky na úrovni projektu lze odkazovat v UsingTask prvcích zahrnutých v souboru projektu buď přímo, nebo prostřednictvím importovaného souboru projektu. Další informace najdete v tématu Úkoly.

Poznámka:

Vlastnosti a položky na úrovni projektu nemají význam, pokud UsingTask prvek pochází z některého ze souborů .tasks , které jsou globálně registrovány pomocí modulu MSBuild. Hodnoty na úrovni projektu nejsou globální pro NÁSTROJ MSBuild.

V MSBuild 4.0 lze pomocí úloh načíst ze souborů .overridetask .

Sestavení obsahující vlastní úlohu se načte při Task prvním použití.

Příklad 1

Následující příklad ukazuje, jak použít UsingTask prvek s atributem AssemblyFile .

<UsingTask TaskName="Email"
           AssemblyFile="c:\myTasks\myTask.dll" />

Vzhledem k tomu, že není Runtime zadána nebo TaskHost není zadána, úloha se spustí v procesu MSBuild v modulu runtime a architektuře, které se pro dané sestavení spouští.

Příklad 2

Následující příklad ukazuje, jak použít UsingTask prvek s atributem AssemblyName a vlastní TaskFactory definovaný v tomto sestavení.

<UsingTask TaskName="MyTask" AssemblyName="My.Assembly" TaskFactory="MyTaskFactory">
       <ParameterGroup>
              <Parameter1 ParameterType="System.String" Required="False" Output="False"/>
              <Parameter2 ParameterType="System.Int" Required="True" Output="False"/>
              ...
</ParameterGroup>
       <Task>
      ... Task factory-specific data ...
       </Task>
</UsingTask>

Viz také