Skip to content

Commit 41e0a16

Browse files
authored
add note about package output (#46463)
1 parent 2b54f88 commit 41e0a16

File tree

1 file changed

+15
-13
lines changed

1 file changed

+15
-13
lines changed

docs/core/sdk/artifacts-output.md

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
title: Artifacts output layout
33
description: Learn about a .NET SDK feature that centralizes and simplifies the layout of project outputs.
4-
ms.date: 10/31/2023
4+
ms.date: 05/28/2025
55
---
66
# Artifacts output layout
77

@@ -18,23 +18,25 @@ By default, the common location is a directory named *artifacts* next to the *Di
1818

1919
The following table shows the default values for each level in the folder structure. You can override the values, as well as the default location, using properties in the *Directory.build.props* file.
2020

21-
| Folder level | Description | Examples |
22-
|--|--|--|
23-
| Type of output | Categories of build outputs, such as binaries, intermediate/generated files, published applications, and NuGet packages. |`bin`, `obj`, `publish`, `package` |
24-
| Project name | Separates output by each project. | `MyApp` |
25-
| Pivot | Distinguishes between builds of a project for different configurations, target frameworks, and runtime identifiers. If multiple elements are needed, they're joined by an underscore (`_`). Can be customized using the `ArtifactsPivots` MSBuild property. | `debug`, `debug_net8.0`, `release`, `release_linux-x64` |
21+
| Folder level | Description | Examples |
22+
|----------------|-----------------------------------|------------------------------------|
23+
| Type of output | Categories of build outputs, such as binaries, intermediate/generated files, published applications, and NuGet packages. | `bin`, `obj`, `publish`, `package` |
24+
| Project name† | Separates output by each project. | `MyApp` |
25+
| Pivot† | Distinguishes between builds of a project for different configurations, target frameworks, and runtime identifiers. If multiple elements are needed, they're joined by an underscore (`_`). Can be [customized](#how-to-configure) using the `ArtifactsPivots` MSBuild property. | `debug`, `debug_net8.0`, `release`, `release_linux-x64` |
26+
27+
† The project name subfolder is omitted for package output paths. In addition, the pivot subfolder includes only the configuration.
2628

2729
## Examples
2830

2931
The following table shows examples of paths that might be created.
3032

31-
| Path | Description |
32-
|---------------------------------------------|--------------------------------------------------------------------------------|
33-
| *artifacts\bin\MyApp\debug* | The build output path for a simple project when you run `dotnet build`. |
34-
| *artifacts\obj\MyApp\debug* | The intermediate output path for a simple project when you run `dotnet build`. |
35-
| *artifacts\bin\MyApp\debug_net8.0* | The build output path for the `net8.0` build of a multi-targeted project. |
36-
| *artifacts\publish\MyApp\release_linux-x64* | The publish path for a simple app when publishing for `linux-x64`. |
37-
| *artifacts\package\MyApp\release* | The folder where the release *.nupkg* is created for a project. |
33+
| Path | Description |
34+
|------------------------------------|--------------------------------------------------------------------------------|
35+
| *artifacts\bin\MyApp\debug* | The build output path for a simple project when you run `dotnet build`. |
36+
| *artifacts\obj\MyApp\debug* | The intermediate output path for a simple project when you run `dotnet build`. |
37+
| *artifacts\bin\MyApp\debug_net8.0* | The build output path for the `net8.0` build of a multi-targeted project. |
38+
| *artifacts\publish\MyApp\release_linux-x64* | The publish path for a simple app when publishing for `linux-x64`. |
39+
| *artifacts\package\release* | The folder where the release *.nupkg* is created for a project. |
3840

3941
## How to configure
4042

0 commit comments

Comments
 (0)