Partilhar via


Especifique qual alvo do MSBuild compilar primeiro

Os arquivos de projeto do MSBuild podem conter um ou mais destinos que definem como o projeto é criado. MSBuild compila o primeiro alvo que encontra e quaisquer dependências, a menos que:

  • O elemento Project contém um atributo InitialTargets.
  • O elemento Project contém um atributo DefaultTargets.
  • O comando MSBuild tem uma opção -target que especifica um destino.

Usar o atributo InitialTargets

O atributo InitialTargets do elemento Project especifica o destino inicial que deve ser executado em primeiro lugar. Ele substitui quaisquer destinos especificados com o MSBuild na linha de comando ou no atributo DefaultTargets do elemento Project.

Especificar um único destino inicial

Especifique o destino padrão no atributo InitialTargets do elemento Project. Por exemplo:

<Project InitialTargets="Clean">

Especificar vários destinos iniciais

Você pode especificar mais de um destino inicial no atributo InitialTargets do elemento Project. Liste os destinos em ordem e use um ponto-e-vírgula para separar cada destino. Os alvos na lista são executados sequencialmente.

Por exemplo, para executar o destino Clean e, em seguida, o destino Compile, digite:

<Project InitialTargets="Clean;Compile">

Utilizar o atributo DefaultTargets

O atributo DefaultTargets do elemento Project especifica qual destino ou destinos serão criados se um destino não for especificado explicitamente na linha de comando.

Se os destinos forem especificados nos atributos InitialTargets e DefaultTargets do elemento Project e nenhum destino for especificado na linha de comando, o MSBuild executará os destinos especificados no atributo InitialTargets seguido pelos destinos especificados no atributo DefaultTargets.

Especificar um único destino padrão

Especifique o destino padrão no atributo DefaultTargets do elemento Project. Por exemplo:

<Project DefaultTargets="Compile">`

Especificar vários destinos padrão

Você pode especificar mais de um destino padrão no atributo DefaultTargets do elemento Project. Liste os destinos padrão em ordem e use um ponto-e-vírgula para separar cada destino. Os alvos na lista são executados sequencialmente.

Por exemplo, para executar o destino Clean e, em seguida, o destino Compile, digite:

<Project DefaultTargets="Clean;Compile">

Utilize o interruptor -target para substituir o alvo padrão

Se um destino padrão não estiver definido no arquivo de projeto ou se você não quiser usar o destino padrão definido, poderá usar a opção de linha de comando -target para especificar um destino diferente. O destino ou destinos especificados com a opção -target são executados em vez dos destinos especificados pelo atributo DefaultTargets do elemento Project. Os destinos especificados no atributo InitialTargets sempre são executados primeiro.

Substituir o destino padrão por um único destino

Especifique o destino a ser usado como o primeiro destino usando a opção de linha de comando -target com dois pontos (:) e o nome do destino. Por exemplo:

msbuild file.proj -target:Clean

Substituir o destino padrão por vários destinos

Especifique uma lista de destinos a serem usados como os primeiros destinos e separe-os por ponto-e-vírgula com a opção de linha de comando -target. Por exemplo:

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