I have an ASP Core project named MyProject that I'm trying to publish to the directory MyProject\published. I run dotnet publish -o published. This works correctly the first time. However, the second time that I run this, the files get published to MyProject\published\published. The third time it gets published to MyProject\published\published\published, and so on. Why does each subsequent publish create one more nested directory, rather than just overwriting MyProject\published?
That seems is a known issue about dotnet sdk :
https://github.com/dotnet/sdk/issues/377
https://github.com/dotnet/cli/issues/2855
The current alternatives appear to be manually deleting stale files or adding custom tasks for cleanups.
This is now mentioned officially in the documentation: https://learn.microsoft.com/en-us/dotnet/core/tools/dotnet-publish
First, delete your current bin/release-folder (otherwise it won't work!). Then you can add
<DefaultItemExcludes>$(DefaultItemExcludes);publish**</DefaultItemExcludes>
to a PropertyGroup element in the .csproj file. The above example assumes, the publish-folder is named publish (please change it if necessary)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With