다음을 통해 공유


먼저 빌드할 MSBuild 대상 지정

MSBuild 프로젝트 파일에는 프로젝트를 빌드하는 방법을 정의하는 하나 이상의 대상이 포함될 수 있습니다. MSBuild는 다음을 수행하지 않는 한 찾은 첫 번째 대상과 종속성을 빌드합니다.

  • Project 요소에는 InitialTargets 특성이 포함되어 있습니다.
  • Project 요소에는 DefaultTargets 특성이 포함되어 있습니다.
  • MSBuild 명령에는 대상을 지정하는 -target 스위치가 있습니다.

InitialTargets 특성 사용

Project 요소의 InitialTargets 특성은 먼저 실행되는 초기 대상을 지정합니다. MSBuild의 명령줄 또는 Project 요소의 DefaultTargets 특성에서 지정한 대상을 모두 무시하고 재정의합니다.

단일 초기 대상 지정

Project 요소의 InitialTargets 특성에 기본 대상을 지정합니다. 예를 들어:

<Project InitialTargets="Clean">

여러 초기 대상 지정

Project 요소의 InitialTargets 특성에서 둘 이상의 초기 대상을 지정할 수 있습니다. 대상을 순서대로 나열하고 세미콜론을 사용하여 각 대상을 구분합니다. 목록의 대상은 순차적으로 실행됩니다.

예를 들어 Clean 대상을 실행한 다음 Compile 대상을 실행하려면 다음을 입력합니다.

<Project InitialTargets="Clean;Compile">

DefaultTargets 특성 사용

Project 요소의 DefaultTargets 특성은 명령줄에서 대상이 명시적으로 지정되지 않은 경우 빌드되는 대상 또는 대상을 지정합니다.

대상이 Project 요소의 InitialTargetsDefaultTargets 특성 모두에 지정되고 명령줄에 대상이 지정되지 않은 경우 MSBuild는 InitialTargets 특성에 지정된 대상과 DefaultTargets 특성에 지정된 대상을 실행합니다.

단일 기본 대상 지정

Project 요소의 DefaultTargets 특성에 기본 대상을 지정합니다. 예를 들어:

<Project DefaultTargets="Compile">`

여러 기본 대상 지정

Project 요소의 DefaultTargets 특성에서 둘 이상의 기본 대상을 지정할 수 있습니다. 기본 대상을 순서대로 나열하고 세미콜론을 사용하여 각 대상을 구분합니다. 목록의 대상은 순차적으로 실행됩니다.

예를 들어 Clean 대상을 실행한 다음 Compile 대상을 실행하려면 다음을 입력합니다.

<Project DefaultTargets="Clean;Compile">

-target 스위치를 사용하여 기본 대상을 변경합니다.

기본 대상이 프로젝트 파일에 정의되어 있지 않거나 정의된 기본 대상을 사용하지 않으려면 명령줄 스위치 -target 사용하여 다른 대상을 지정할 수 있습니다. -target 스위치로 지정된 대상이나 대상들은 Project 요소의 DefaultTargets 특성에 지정된 대상 대신 실행됩니다. InitialTargets 특성에 지정된 대상은 항상 먼저 실행됩니다.

기본 대상을 단일 대상으로 덮어쓰기

콜론(:) 및 대상의 이름과 함께 -target 명령줄 스위치를 사용하여 첫 번째 대상으로 사용할 대상을 지정합니다. 예를 들어:

msbuild file.proj -target:Clean

여러 대상들로 기본 목표를 대체합니다.

첫 번째 대상으로 사용할 대상 목록을 지정하고 -target 명령줄 스위치를 사용하여 세미콜론으로 구분합니다. 예를 들어:

msbuild <file name>.proj -t:Clean;Compile