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.targets
oder 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.