Udostępnij za pośrednictwem


Określ, który cel MSBuild skompilować jako pierwszy

Pliki projektu MSBuild mogą zawierać co najmniej jeden element docelowy, który definiuje sposób tworzenia projektu. Program MSBuild tworzy pierwszy element docelowy, który znajdzie, i wszelkie zależności, chyba że:

  • Element Project zawiera atrybut InitialTargets.
  • Element Project zawiera atrybut DefaultTargets.
  • Polecenie MSBuild ma przełącznik -target, który określa cel.

Używanie atrybutu InitialTargets

Atrybut InitialTargets elementu Project określa początkowy element docelowy, który jest uruchamiany jako pierwszy. Zastępuje wszelkie cele określone przy użyciu MSBuild w wierszu polecenia lub w atrybucie DefaultTargets elementu Project.

Określanie pojedynczego początkowego miejsca docelowego

Określ domyślną wartość docelową w atrybucie InitialTargets elementu Project. Na przykład:

<Project InitialTargets="Clean">

Określanie wielu początkowych elementów docelowych

W atrybucie InitialTargets elementu Project można określić więcej niż jeden początkowy element docelowy. Wyświetl listę obiektów docelowych w kolejności i użyj średnika, aby oddzielić każdy obiekt docelowy. Obiekty docelowe na liście są uruchamiane sekwencyjnie.

Aby na przykład uruchomić cel Clean, a następnie cel Compile, wprowadź:

<Project InitialTargets="Clean;Compile">

Użyj atrybutu DefaultTargets

Atrybut DefaultTargets elementu Project określa, które cele są tworzone, jeśli cel nie jest określony bezpośrednio w wierszu poleceń.

Jeśli obiekty docelowe są określone zarówno w atrybutach InitialTargets, jak i DefaultTargets elementu Project, a w wierszu polecenia nie określono elementu docelowego, program MSBuild uruchamia obiekty docelowe określone w atrybucie InitialTargets, po którym następuje obiekty docelowe określone w atrybucie DefaultTargets.

Określ pojedynczy domyślny cel

Określ domyślny cel w atrybucie DefaultTargets elementu Project. Na przykład:

<Project DefaultTargets="Compile">`

Określanie wielu domyślnych celów

W atrybucie DefaultTargets elementu Project można określić więcej niż jeden domyślny element docelowy. Wyświetl listę domyślnych obiektów docelowych w kolejności i użyj średnika, aby oddzielić każdy element docelowy. Obiekty docelowe na liście są uruchamiane sekwencyjnie.

Aby na przykład uruchomić cel Clean, a następnie cel Compile, wprowadź:

<Project DefaultTargets="Clean;Compile">

Użyj przełącznika -target, aby zastąpić domyślny element docelowy

Jeśli domyślny element docelowy nie jest zdefiniowany w pliku projektu lub jeśli nie chcesz używać zdefiniowanego domyślnego obiektu docelowego, możesz użyć przełącznika wiersza polecenia -target, aby określić inny element docelowy. Cel lub obiekty docelowe określone za pomocą przełącznika -target są uruchamiane zamiast obiektów docelowych określonych przez atrybut DefaultTargets elementu Project. Elementy docelowe określone w atrybucie InitialTargets uruchamiane są zawsze jako pierwsze.

Zastąpij domyślny element docelowy za pomocą pojedynczego obiektu docelowego

Określ element docelowy, który ma być używany jako pierwszy element docelowy, używając przełącznika wiersza polecenia -target z dwukropkiem (:) i nazwą obiektu docelowego. Na przykład:

msbuild file.proj -target:Clean

Zastąp domyślny cel wieloma celami

Określ listę obiektów docelowych, które mają być używane jako pierwsze obiekty docelowe, i rozdziel je średnikami za pomocą przełącznika wiersza polecenia -target. Na przykład:

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