UsingTask 요소(MSBuild)

Task 요소에서 참조하는 작업을 작업의 구현이 포함된 어셈블리에 매핑합니다.

<Project>
<UsingTask>

구문

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

특성 및 요소

다음 단원에서는 특성, 자식 요소 및 부모 요소에 대해 설명합니다.

특성

특성 설명
AssemblyName AssemblyName 특성 또는 AssemblyFile 특성이 필요합니다.

로드할 어셈블리의 이름입니다. AssemblyName 특성에서는 강력한 이름의 어셈블리를 허용하지만 필수적 요소는 아닙니다. 이 특성을 사용하면 .NET에서 Load 메서드를 사용하여 어셈블리를 로드하는 것과 같은 결과를 얻을 수 있습니다.

AssemblyFile 특성을 사용하는 경우에는 이 특성을 사용할 수 없습니다.
AssemblyFile AssemblyName 또는 AssemblyFile 특성이 필요합니다.

어셈블리의 파일 경로입니다. 이 특성에는 전체 경로 또는 상대 경로를 모두 사용할 수 있습니다. 상대 경로는 UsingTask 요소가 선언된 대상 파일이나 프로젝트의 디렉터리를 기준으로 합니다. 이 특성을 사용하면 .NET에서 LoadFrom 메서드를 사용하여 어셈블리를 로드하는 것과 같은 결과를 얻을 수 있습니다.

AssemblyName 특성을 사용하는 경우에는 이 특성을 사용할 수 없습니다.
TaskFactory 선택적 특성입니다.

지정된 Task 이름의 인스턴스 생성을 담당하는 어셈블리에 클래스를 지정합니다. 사용자는 또한 작업 팩터리가 수신해서 작업을 생성하는 데 사용하는 하위 요소로 TaskBody를 지정할 수 있습니다. TaskBody의 내용은 작업 팩터리에만 해당합니다.
TaskName 필수 특성입니다.

어셈블리에서 참조할 작업의 이름입니다. 모호성이 발생할 가능성이 있으면 이 특성에 항상 전체 네임스페이스를 지정해야 합니다. 모호성이 있으면 MSBuild에서는 일치하는 임의의 항목을 선택하므로 예기치 않은 결과가 발생할 수 있습니다.
Condition 선택적 특성입니다.

평가할 조건입니다. 자세한 내용은 조건을 참조하세요.

자식 요소

요소 설명
ParameterGroup 지정된 TaskFactory에서 생성한 작업에 나타나는 매개 변수 집합입니다.
Task 작업의 인스턴스를 생성하기 위해 TaskFactory로 전달되는 데이터입니다.

부모 요소

요소 설명
Project MSBuild 프로젝트 파일의 필수 루트 요소입니다.

설명

환경 변수, 명령줄 속성 및 프로젝트 수준 속성은 UsingTask 요소가 명시적으로 또는 가져온 프로젝트 파일을 통해 프로젝트 파일 안에 표시되는 한 이 요소 내에서 위치에 상관없이 참조할 수 있습니다. 자세한 내용은 작업을 참조하세요.

참고

MSBuild 엔진을 통해 전역으로 등록된 .tasks 파일 중 하나에서 UsingTask 요소를 가져오는 경우 프로젝트 수준 속성에는 의미가 없습니다. 프로젝트 수준의 속성은 MSBuild에 대해 전역이 아닙니다.

MSBuild 4.0에서는 작업 사용을 .overridetask 파일에서 로드할 수 있습니다.

예제

다음 예제에서는 AssemblyName 특성에서 UsingTask 요소를 사용하는 방법을 보여 줍니다.

<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>  
       <TaskBody>  
      ... Task factory-specific data ...  
       </TaskBody>  
</UsingTask>  

예제

다음 예제에서는 AssemblyFile 특성에서 UsingTask 요소를 사용하는 방법을 보여 줍니다.

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

참고 항목

작업
작업 참조
프로젝트 파일 스키마 참조