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í a položek se používá prvníUsingTask prvek, který se vztahuje na určitý objekt TaskName ; k přepsání úkolů je nutné definovat nový UsingTaskpřed existujícím elementem nebo zadat Override="true" v nové UsingTask.

Atributy a prvky

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

Attributes

Vlastnost Description
Architecture Volitelný 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é se má 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 Volitelný 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 Volitelný atribut.

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

Podporované hodnoty jsou CLR2 (.NET Framework 3.5), CLR4 (.NET Framework 4.7.2 nebo vyšší), CurrentRuntime, NET (.NET) a * (jakýkoli modul runtime). Runtime="NET" se podporuje od verze MSBuild 18.0 (.NET SDK 10/Visual Studio 2026) a v současné době je podporován pouze pro projekty používající Microsoft.NET.Sdk. dotnet build (verze .NET nástroje MSBuild) nemůže spouštět CLR2/CLR4 úlohy.
TaskFactory Volitelný 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 Volitelný atribut.

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

Podřízené prvky

prvek Description
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

prvek Description
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 naleznete 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 .overridetask souborů.

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é