Training
Modul
Verwalten von Buildabhängigkeiten mit Azure Artifacts - Training
In diesem Modul führt Sie das Space Game-Webteam durch die Erstellung einer Buildpipeline, die ein Paket erzeugt, das von mehreren Anwendungen verwendet werden kann.
Dieser Browser wird nicht mehr unterstützt.
Führen Sie ein Upgrade auf Microsoft Edge durch, um die neuesten Features, Sicherheitsupdates und den technischen Support zu nutzen.
In .NET 8 und höheren Versionen gibt es eine Möglichkeit, den Ausgabepfad und die Ordnerstruktur für Buildausgaben zu vereinfachen. Alle Buildausgaben aller Projekte werden an einem gemeinsamen Ort gesammelt, getrennt nach Projekt. Ein allgemeiner Speicherort erleichtert Tools das Antizipieren, wo die Ausgaben gefunden werden können.
Standardmäßig ist der allgemeine Speicherort ein Verzeichnis namens Artefakte neben der Datei Directory.build.props. Die Ordnerstruktur unter dem Stammordner artifacts lautet wie folgt:
📁 artifacts
└──📂 <Type of output>
└──📂 <Project name>
└──📂 <Pivot>
Die folgende Tabelle zeigt die Standardwerte für jede Ebene in der Ordnerstruktur. Sie können die Werte wie auch den Standardspeicherort mithilfe von Eigenschaften in der Datei Directory.build.props überschreiben.
Ordnerebene | Beschreibung | Beispiele |
---|---|---|
Ausgabetyp | Kategorien von Buildausgaben, z. B. Binärdateien, Zwischen-/generierte Dateien, veröffentlichte Anwendungen und NuGet-Pakete. | bin , obj , publish , package |
Projektname | Trennt die Ausgabe pro Projekt. | MyApp |
Pivotieren | Unterscheidet zwischen Builds eines Projekts für verschiedene Konfigurationen, Zielframeworks und Runtime-Bezeichner. Wenn mehrere Elemente benötigt werden, werden sie durch einen Unterstrich (_ ) verknüpft. Kann mithilfe der ArtifactsPivots -MSBuild-Eigenschaft angepasst werden. |
debug , debug_net8.0 , release , release_linux-x64 |
Die folgende Tabelle enthält Beispiele für Pfade, die erstellt werden könnten.
Pfad | Beschreibung |
---|---|
artifacts\bin\MyApp\debug | Der Buildausgabepfad für ein einfaches Projekt, wenn Sie dotnet build ausführen. |
artifacts\obj\MyApp\debug | Der Zwischenausgabepfad für ein einfaches Projekt, wenn Sie dotnet build ausführen. |
artifacts\bin\MyApp\debug_net8.0 | Der Buildausgabepfad für den net8.0 -Build eines Projekts mit mehreren Zielgruppen. |
artifacts\publish\MyApp\release_linux-x64 | Der Veröffentlichungspfad für eine einfache App beim Veröffentlichen für linux-x64 . |
artifacts\package\MyApp\release | Der Ordner, in dem der Release .nupkg für ein Projekt erstellt wird. |
Wenn Sie sich für das Format des zentralisierten Ausgabepfads entscheiden möchten, fügen Sie Ihrer Directory.Build.props-Datei eine der folgenden MSBuild-Eigenschaften hinzu:
Um den Standardausgabespeicherort zu verwenden, legen Sie die UseArtifactsOutput
-Eigenschaft auf true
fest.
<PropertyGroup>
<UseArtifactsOutput>true</UseArtifactsOutput>
</PropertyGroup>
Um einen benutzerdefinierten Ausgabespeicherort festzulegen, fügen Sie eine ArtifactsPath
-Eigenschaft mit dem Wert $(MSBuildThisFileDirectory)artifacts
hinzu (oder was auch immer der Ordnerspeicherort sein soll). Wenn Sie noch nicht über eine Datei Directory.Build.props verfügen, können Sie den folgenden Befehl ausführen, um automatisch eine Datei zu generieren, welche die ArtifactsPath
-Eigenschaft enthält:
dotnet new buildprops --use-artifacts
Die generierte Datei sieht ähnlich aus wie diese:
<Project>
<PropertyGroup>
<ArtifactsPath>$(MSBuildThisFileDirectory)artifacts</ArtifactsPath>
</PropertyGroup>
</Project>
Der Ordnername „pivot“ ist standardmäßig eine Kombination aus Zielframeworkmoniker (Target Framework Moniker, TFM), Konfiguration und Laufzeitbezeichner (Runtime Identifier, RID). Alle, die nicht vorhanden sind, werden weggelassen. Um anzupassen, wie der Ordner „pivot“ benannt wird, legen Sie die ArtifactsPivots
-MSBuild-Eigenschaft auf die gewünschte Zeichenfolge fest. Beispiel:
<PropertyGroup>
...
<ArtifactsPivots>$(ArtifactsPivots)_MyCustomPivot</ArtifactsPivots>
</PropertyGroup>
Feedback zu .NET
.NET ist ein Open Source-Projekt. Wählen Sie einen Link aus, um Feedback zu geben:
Training
Modul
Verwalten von Buildabhängigkeiten mit Azure Artifacts - Training
In diesem Modul führt Sie das Space Game-Webteam durch die Erstellung einer Buildpipeline, die ein Paket erzeugt, das von mehreren Anwendungen verwendet werden kann.