MSBuild-Glossar
Mit den folgenden Begriffen werden Microsoft Build Engine (MSBuild) und deren Komponenten beschrieben.
AssemblyFoldersEx
Ein Registrierungsspeicherort, an dem Drittanbieter Pfade für jede Version des Frameworks speichern, das sie unterstützen, und die Entwurfszeitauflösung nach Verweisassemblys suchen kann.
Batchverarbeitung
Batchverarbeitung bedeutet, dass Elemente anhand der Elementmetadaten in als Batches bezeichnete Kategorien unterteilt werden, über die anschließend jeweils ein Ziel oder eine Aufgabe ausgeführt wird. Die Batchverarbeitung ist die MSBuild-Entsprechung des Schleifenkonstrukts. Weitere Informationen finden Sie unter MSBuild Batching (Batchverarbeitung).
Buildumfang
Der Buildumfang beschreibt ein MSBuild-Objekt, z. B. eine globale Eigenschaft, das für ein Projekt und ggf. für dessen in einem Build mit mehreren Projekten erstellte untergeordnete Projekte potenziell sichtbar ist.
untergeordnetes Projekt
Siehe Projekt, untergeordnet.
condition
Viele MSBuild-Elemente können bedingt definiert werden, das heißt, im Element wird das Condition
-Attribut angegeben. Sofern wenn die Bedingung nicht true
ergibt, wird der Inhalt bedingter Elemente ignoriert. Weitere Informationen finden Sie unter Conditions (MSBuild-Bedingungen).
Definition, Element
Siehe Elementdefinition.
Ausgabeelement
Während der Ausführungsphase eines Builds können Elemente von Aufgaben erstellt oder geändert werden, die untergeordnete Output
-Elemente mit dem ItemName
-Attribut aufweisen. Die Aufgabe gibt die neuen Elemente sozusagen aus.
Ausgabeeigenschaft
Während der Ausführungsphase eines Builds können Eigenschaften von Aufgaben erstellt oder geändert werden, die untergeordnete Output
-Elemente mit dem PropertyName
-Attribut aufweisen. Die Aufgabe gibt die neue Eigenschaft sozusagen aus.
Auswertungsphase
Als Auswertung wird die erste Phase eines Projektbuilds bezeichnet. Alle Eigenschaften und Elemente werden in der Reihenfolge ausgewertet, in der sie in der Projektdatei angezeigt werden. Importierte Projekte werden ausgewertet, sobald sie im Projekt gefunden wurden. Ziele und Aufgaben werden erst in der Ausführungsphase ausgeführt, und alle Eigenschaften oder Elemente, die sie deklarieren oder ausgeben würden, werden während der Auswertung ignoriert.
Ausführungsphase
Die Ausführung bildet die zweite Phase eines Projektbuilds. Ausgewählte Ziele werden erstellt, und Aufgaben werden ausgeführt. Eigenschaften und Elemente können erstellt oder im Vergleich zu den zugehörigen Auswertungswerten geändert werden.
Funktion, Eigenschaft
Siehe Eigenschaftenfunktion.
Funktion, Element
Siehe Elementfunktion.
item
Elemente bilden Eingaben für das Buildsystem und werden auf Grundlage ihrer Elementnamen in Elementtypen gruppiert. Elemente stellen in der Regel Dateien dar. Da Elemente anhand des Elementtyps benannt werden, zu dem sie gehören, können die Begriffe Element und Elementwert synonym verwendet werden. Weitere Informationen finden Sie unter Elemente.
Elementdefinition
Elementdefinitionsgruppen enthalten Elementdefinitionen, durch die jedem Elementtyp Standardmetadaten hinzugefügt werden. Analog zu bekannten Metadaten sind die Standardmetadaten allen Elementen des angegebenen Elementtyps zugeordnet. Standardmetadaten können in einer Elementdefinition explizit überschrieben werden. Weitere Informationen finden Sie unter Elementdefinitionen.
Elementfunktion
Elementfunktionen rufen Informationen über die Elemente im Projekt ab. Diese Funktionen vereinfachen das Abrufen von Distinct()-Elementen, und mit ihnen erfolgt der Abruf schneller als beim Durchlaufen der Elemente. Es gibt Funktionen zum Bearbeiten von Elementpfaden und -zeichenfolgen. Weitere Informationen finden Sie unter Elementfunktionen.
Elementmetadaten
Siehe Metadaten, Element.
Elementtyp
Elementtypen sind benannte Listen von Elementen, die als Parameter für Aufgaben verwendet werden können. In den Aufgaben werden die Schritte des Buildprozesses mithilfe der Elementwerte ausgeführt. Weitere Informationen finden Sie unter Elemente.
Metadaten, Element
Elementmetadaten sind Auflistungen von Name-Wert-Paaren, die einem Element zugeordnet sind. Metadaten enthalten beschreibende Informationen zum Element und sind, außer bei bekannten Metadaten, optional. Weitere Informationen finden Sie unter Elemente.
Metadaten, bekannte
Als bekannte Metadaten werden schreibgeschützte Elementmetadaten bezeichnet, die mit einem vordefinierten Wert initialisiert werden. Bekannte Metadaten enthalten beschreibende Informationen zu einem Element, das auf eine Datei verweist. Beispielsweise wird als Wert des bekannten Metadatenelements FullPath
der vollständige Pfad der Datei verwendet, auf die verwiesen wird. Weitere Informationen finden Sie unter Elemente.
Festlegung von Zielversionen
Die Fähigkeit eines Anwendungs- oder Assemblyprojekts, auf viele verschiedene CLRs und Frameworks von MSBuild und Visual Studio abzuzielen.
Profil
Eine Teilmenge des vollständigen Frameworks. Dies wird verwendet, um die Menge zu verringern, die auf einen Computer heruntergeladen werden muss.
Projektdatei
Eine Projektdatei enthält das MSBuild-Skript, das den Build steuert. Projektdateien weisen meist eine Erweiterung auf, die mit proj endet, z.B. .csproj oder .vbproj. Von Projektdateien können Eigenschaftendateien und Zieldateien importiert werden.
property
Eine Eigenschaft besteht aus einem Schlüssel-Wert-Paar, das zum Steuern des Buildprozesses verwendet wird. Weitere Informationen finden Sie unter MSBuild-Eigenschaften.
Eigenschaft, Umgebung
Umgebungseigenschaft wird eine Eigenschaft genannt, die automatisch mit dem Wert einer Systemumgebungsvariable mit demselben Namen initialisiert wird. Weitere Informationen finden Sie unter MSBuild-Eigenschaften.
Eigenschaftendatei
Als Eigenschaftendatei wird eine Projektdatei bezeichnet, die vor allem Eigenschaftengruppen und Elementgruppen zur Steuerung des Builds enthält. Konventionsgemäß besitzen solche Dateien die Erweiterung .props. Eigenschaftendateien werden meist am Anfang zugeordneter Projektdateien importiert.
Eigenschaft, Funktion
Als Eigenschaftenfunktion wird eine Systemeigenschaft oder -methode bezeichnet, die zum Auswerten von MSBuild-Skripts verwendet werden kann. Mit Eigenschaftenmethoden ist es möglich, die Systemzeit zu lesen, Zeichenfolgen zu vergleichen, nach regulären Ausdrücke zu suchen und weitere Aktionen auszuführen. Weitere Informationen finden Sie unter Eigenschaftenfunktionen.
Eigenschaftenfunktion, geschachtelt
Eigenschaftenfunktionen können zu komplexeren Funktionen kombiniert werden. Beispiel:
$([MSBuild]::BitwiseAnd(32, $([System.IO.File]::GetAttributes(tempFile))))
Weitere Informationen finden Sie unter Eigenschaftenfunktionen.
Eigenschaft, global
Eine globale Eigenschaft besteht aus einem Schlüssel-Wert-Paar, das zum Steuern des Buildprozesses verwendet wird. Globale Eigenschaften werden an einer Eingabeaufforderung oder über das Properties
-Attribut einer MSBuild-Aufgabe festgelegt und können während der Auswertungsphase eines Builds nicht geändert werden. Weitere Informationen finden Sie unter MSBuild-Eigenschaften.
Eigenschaft, lokal
Eine lokale Eigenschaft besteht aus einem Schlüssel-Wert-Paar, das zum Steuern des Buildprozesses verwendet wird. Dieser Begriff wird nur verwendet, um explizit eine Eigenschaft zu bezeichnen, bei der es sich um keine globale Eigenschaft handelt.
Eigenschaft, Registrierung
Registrierungseigenschaften besitzen einen Wert, der mit einer besonderen Syntax festgelegt wird, die den Wert eines Systemregistrierungsunterschlüssels liest. Weitere Informationen finden Sie unter MSBuild-Eigenschaften.
Eigenschaft, reserviert
Eine reservierte Eigenschaft besteht aus einem Schlüssel-Wert-Paar, das zum Steuern des Buildprozesses verwendet wird. Reservierte Eigenschaften werden automatisch mit vordefinierten Werten initialisiert. Weitere Informationen finden Sie unter MSBuild-Eigenschaften.
Projektumfang
Der Projektumfang beschreibt ein MSBuild-Objekt, z. B. eine lokale Eigenschaft, das nur in der enthaltenden Projektdatei und in allen Projekten sichtbar ist, die von dieser importiert wurden.
Projekt, untergeordnetes
Ein untergeordnetes Projekt wird während eines Projektbuilds von der MSBuild-Aufgabe erstellt. Dieses neue Projekt ist dem Projekt untergeordnet, das das Ziel mit der MSBuild-Aufgabe enthält oder importiert. Das untergeordnete Projekt erbt die globalen Eigenschaften des übergeordneten Projekts, sofern diese nicht vom Properties
-Attribut geändert werden.
redist-Liste
Neuverteilungsliste: die Liste der Assemblys, die einem angegebenen Framework entsprechen.
Verweisassembly
Eine Assembly, mit der während der Entwurfszeit eine Anwendung erstellt wird. Von einer Verweisassembly können der tatsächliche Code und die privaten Schnittstellen entfernt und nur die Metadaten und die öffentlichen Schnittstellen beibehalten werden.
Registrierungseigenschaft
Siehe Eigenschaft, Registrierung.
target
In einem Ziel werden Aufgaben in einer bestimmten Reihenfolge gruppiert und Abschnitte der Projektdatei als Einstiegspunkte in den Buildprozess verfügbar gemacht. Weitere Informationen finden Sie unter Ziele.
Ziel, Build
Siehe Ziel, Ausführen.
Ziel, Auswerten
Aufgrund der inkrementellen Kompilierung müssen Ziele auf potenzielle Änderungen an Eigenschaften und Elementen analysiert werden. Diese Änderungen müssen auch vorgenommen werden, wenn das Ziel übersprungen wurde. Ein Ziel auszuwerten bedeutet, diese Analyse auszuführen und die genannten Änderungen vorzunehmen. Weitere Informationen finden Sie unter Incremental Builds (Inkrementelle Builds).
Ziel, Ausführen (Execute)
Ein Ziel auszuführen bedeutet, dieses auszuwerten und alle Aufgaben auszuführen, die keine Bedingungen aufweisen oder deren Bedingungen zu true ausgewertet werden. Während der inkrementellen Kompilierung können Ziele übersprungen oder ausgeführt werden, jedoch werden sie werden in jedem Fall ausgewertet. Weitere Informationen finden Sie unter Ziel, Auswerten.
Ziel, Ausführen (Run)
Ein Ziel, das eine Bedingung aufweist, die false ergibt, wird nicht ausgeführt (Run) und besitzt daher keine Auswirkungen auf den Build. Ziele, die ausgeführt (Run) werden, werden ausgeführt (Execute) oder aber übersprungen. In jedem Fall wird das Ziel ausgewertet. Weitere Informationen finden Sie unter Ziel, Auswerten.
Ziel, Überspringen
Wenn bei der inkrementellen Kompilierung ermittelt wird, dass alle Ausgabedateien aktuell sind, wird das Ziel übersprungen, das heißt, das Ziel wird ausgewertet, jedoch werden die Aufgaben im Ziel nicht ausgeführt. Weitere Informationen finden Sie unter Ziel, Auswerten.
Zielframeworkmoniker
Ein Name, der das Framework (z.B. .NET Framework, Silverlight usw.), die Version und das Profil (z.B. Client, Server usw.) beschreibt, die das Ziel darstellen sollen.
Paket zur Festlegung von Zielversionen
Die Liste der Assemblys, die mit einem angegebenen Framework und dem Satz von Verweisassemblys für dieses Framework verteilt werden sollen.
TARGETS-Datei
Eine TARGETS-Datei ist eine Projektdatei, die vor allem Ziele und Aufgaben zur Steuerung des Builds enthält. Konventionsgemäß besitzen solche Dateien die Erweiterung .targets. TARGETS-Dateien werden meist am Ende zugeordneter Projektdateien importiert.
task
Aufgaben sind Einheiten ausführbaren Codes, die in MSBuild-Projekten zum Ausführen von Buildvorgängen verwendet werden. Eine Aufgabe kann beispielsweise Eingabedateien kompilieren oder ein externes Tool ausführen. Weitere Informationen finden Sie unter MSBuild-Aufgaben.
Transformieren
Eine Transformation ist eine 1:1-Konvertierung von einer Elementauflistung in eine andere. Über Transformationen können nicht nur Elementauflistungen in einem Projekt transformiert werden, sondern auch direkte Zuordnungen zwischen Eingaben und Ausgaben eines Ziels identifiziert werden. Weitere Informationen finden Sie unter Transformationen.
Bekannte Metadaten
Siehe Metadaten, bekannt.