MSBuild-Dateien .targets

MSBuild enthält mehrere .targets Dateien, die Elemente, Eigenschaften, Ziele und Aufgaben für häufige Szenarien enthalten. Diese Dateien werden in die meisten Visual Studio-Projektdateien automatisch importiert, um Lesbarkeit und Verwaltung zu vereinfachen.

Projekte im SDK-Stil (Projekte mit etwa <Project Sdk="Microsoft.NET.Sdk">) importieren .targets Dateien anders als projekte, die nicht auf ein SDK verweisen. Bei SDK-Formatprojekten wird die importierte .targets Datei in der Projektdatei nicht angezeigt, da diese Importe vom SDK verwaltet werden, auf das Sie verweisen. Projekte im SDK-Stil entsprechen jedoch Nicht-SDK-Formatprojekten mit Standardimporten vor und nach dem Standard Textkörper der Datei, daher ist es immer noch genau zu sagen, dass die Standarddateien .targets in diesen Projekten importiert werden.

.NET SDK-Ziele werden mit dem .NET SDK installiert, z. B. unter C:\Program Files\dotnet\sdk\{version}\Sdks\Microsoft.NET.Sdk\targets\ Windows Microsoft.NET.Sdk . Eine vollständige Liste der SDKs und welche .targets Datei sie importieren, finden Sie unter .NET-Projekt-SDKs.

Projekte, die kein SDK angeben, importieren in der Regel explizit eine oder mehrere .targets Dateien, um ihren Buildprozess zu definieren. Beispielsweise importieren C#-Projekte, die von früheren Versionen von Visual Studio erstellt wurden, Microsoft.CSharp.targets, die Microsoft.Common.targets importiert. Das C#-Projekt selbst definiert die Für dieses Projekt spezifischen Elemente und Eigenschaften, aber die Standardbuildregeln für ein C#-Projekt werden in den importierten .targets Dateien definiert.

Der $(MSBuildToolsPath) Wert gibt den Pfad dieser allgemeinen .targets Dateien an. Bei .NET-Projekten ist der Pfad in der Regel {Visual Studio installation folder}\MSBuild\Current\Bin\{architecture}.

Hinweis

Informationen zum Erstellen eigener Ziele finden Sie unter Targets (MSBuild-Ziele). Wie Sie mithilfe des Import-Elements eine Projektdatei in eine andere Projektdatei einfügen können, wird unter Import-Element (MSBuild) und Vorgehensweise: Verwenden desselben Ziels in mehreren Projektdateien erklärt.

Allgemeine .targets Dateien

TARGETS-Datei Beschreibung
Microsoft.Common.targets Definiert die Schritte im Standardbuildprozess für Visual Basic- und C#-Projekte.

Wird von Microsoft.CSharp.targets-Dateien und Microsoft.VisualBasic.targets-Dateien importiert, die die folgende Anweisung enthalten: <Import Project="Microsoft.Common.targets" />
Microsoft.CSharp.targets Definiert die Schritte im Standardbuildprozess für Visual C#-Projekte.

Importiert von Visual C#-Projektdateien (.csproj).
Microsoft.VisualBasic.targets Definiert die Schritte im Standardbuildprozess für Visual Basic-Projekte.

Importiert von Visual Basic-Projektdateien (.vbproj).

Wenn Sie Dateien öffnen und anzeigen, sehen Sie, dass sie eher dünne Wrapper um andere .targets Dateien herum sind, in der Regel Microsoft.{language}.CurrentVersion.targetsoder für Szenarien mit cross-targeting, Microsoft.{language}.CrossTargeting.targets.

Directory.Build.targets

Bei Directory.Build.targets handelt es sich um eine benutzerdefinierte Datei, die Anpassungen für Projekte in einem Verzeichnis bereitstellt. Diese Datei wird automatisch aus Microsoft.Common.targets importiert, wenn die Eigenschaft ImportDirectoryBuildTargets nicht auf FALSE festgelegt wird. Weitere Informationen finden Sie unter Anpassen des Builds.

Siehe auch