Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
V .NET 8 a novějších verzích je k dispozici možnost zjednodušit výstupní cestu a strukturu složek pro výstupy sestavení. Všechny výstupy sestavení ze všech projektů se shromažďují do společného umístění, kde jsou rozděleny dle projektu. Běžné umístění usnadňuje nástrojům předvídat, kde najít výstupy.
Ve výchozím nastavení je společné umístění adresář pojmenovaný artefakty vedle souboru Directory.build.props . Struktura složek ve složce kořenových artefaktů je následující:
📁 artifacts
└──📂 <Type of output>
└──📂 <Project name>
└──📂 <Pivot>
Následující tabulka uvádí výchozí hodnoty pro každou úroveň ve struktuře složek. Hodnoty a výchozí umístění můžete přepsat pomocí vlastností v souboru Directory.build.props .
| Úroveň složky | Popis | Příklady |
|---|---|---|
| Typ výstupu | Kategorie výstupů sestavení, jako jsou binární soubory, zprostředkující/generované soubory, publikované aplikace a balíčky NuGet. |
bin, obj, , publishpackage |
| Název projektu† | Odděluje výstup podle jednotlivých projektů. Výchozí hodnota je název projektu MSBuild. Lze přizpůsobit pomocí ArtifactsProjectName vlastnosti MSBuild. |
MyApp |
| Pivot† | Rozlišuje mezi sestaveními projektu pro různé konfigurace, cílové architektury a identifikátory modulu runtime. Pokud potřebujete více prvků, jsou spojené podtržítkem (_). Lze přizpůsobit pomocí ArtifactsPivots vlastnosti MSBuild. |
debug, debug_net8.0, , releaserelease_linux-x64 |
† Pro výstupní cesty balíčku se vynechá podsložka název projektu. Kromě toho obsahuje podsložka pro pivot pouze konfiguraci.
Příklady
Následující tabulka uvádí příklady cest, které se můžou vytvořit.
| Cesta | Popis |
|---|---|
| artifacts\bin\MyApp\debug | Výstupní cesta sestavení pro jednoduchý projekt, když spustíte dotnet build. |
| artifacts\obj\MyApp\debug | Mezivýstupní cesta pro jednoduchý projekt při spuštění dotnet build. |
| artifacts\bin\MyApp\debug_net8.0 | Výstupní cesta sestavení pro net8.0 sestavení projektu s více cíli. |
| artifacts\publish\MyApp\release_linux-x64 | Cesta k publikování pro jednoduchou aplikaci při publikování pro linux-x64. |
| artifacts\package\release | Složka, ve které se vytvoří verze .nupkg pro projekt. |
Způsob konfigurace
Chcete-li zvolit centralizovaný formát výstupní cesty, přidejte do souboru Directory.Build.props jednu z následujících vlastností MSBuild:
Chcete-li použít výchozí výstupní umístění, nastavte
UseArtifactsOutputvlastnost natruehodnotu.<PropertyGroup> <UseArtifactsOutput>true</UseArtifactsOutput> </PropertyGroup>Pokud chcete nastavit vlastní výstupní umístění, přidejte
ArtifactsPathvlastnost s hodnotou$(MSBuildThisFileDirectory)artifacts(nebo cokoli chcete, aby umístění složky bylo). Pokud ještě nemáte soubor Directory.Build.props , můžete spustit následující příkaz, který automaticky vygeneruje soubor obsahujícíArtifactsPathtuto vlastnost:dotnet new buildprops --use-artifactsVygenerovaný soubor vypadá nějak takto:
<Project> <PropertyGroup> <ArtifactsPath>$(MSBuildThisFileDirectory)artifacts</ArtifactsPath> </PropertyGroup> </Project>
Název složky "pivot" se ve výchozím nastavení skládá z monikeru cílové platformy (TFM), konfigurace a identifikátoru runtime (RID). Všechny, které nejsou k dispozici, jsou vynechány. Chcete-li přizpůsobit název složky "pivot", nastavte ArtifactsPivots vlastnost MSBuild na požadovaný řetězec. Příklad:
<PropertyGroup>
...
<ArtifactsPivots>$(ArtifactsPivots)_MyCustomPivot</ArtifactsPivots>
</PropertyGroup>
Název složky "název projektu" je výchozí pro název projektu MSBuild. Chcete-li jej přizpůsobit pro konkrétní projekt, nastavte ArtifactsProjectName vlastnost MSBuild v souboru projektu. Příklad:
<PropertyGroup>
<ArtifactsProjectName>CustomProjectName</ArtifactsProjectName>
</PropertyGroup>