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á) CurrentArchitecture a * (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šší) CurrentRuntime a * (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>