当我发布 ABP 项目时,出现以下错误:
C:\Program Files\dotnet\sdk\6.0.100-rc.1.21458.32\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.ConflictResolution.targets(112,5): error NETSDK1152: Found multiple publish output files with the same relative path:
D:\Github\volo\abp\lepton-theme\src\Volo.Abp.AspNetCore.Mvc.UI.Theme.Lepton\compilerconfig.json,
D:\Github\volo\abp\bookstore\src\Acme.BookStore.Theme\compilerconfig.json,
D:\Github\volo\abp\lepton-theme\src\Volo.Abp.AspNetCore.Mvc.UI.Theme.Lepton\package.json,
D:\Github\volo\abp\bookstore\src\Acme.BookStore.Web\package.json.
D:\Github\volo\abp\bookstore\src\Acme.BookStore.Web\Acme.BookStore.Web.csproj
最佳答案
问题:
.NET 6 迁移后出现此问题。 有一项新功能可以阻止将多个文件复制到具有相同文件名的同一目标目录。 请参阅https://learn.microsoft.com/en-us/dotnet/core/compatibility/sdk/6.0/duplicate-files-in-output
解决方案#1(解决方法):
您可以将以下构建属性添加到所有可发布 (*.Web) 项目的 *.csproj 文件中。 此属性将绕过此检查并像以前在 .NET5 中一样工作。
<PropertyGroup>
<ErrorOnDuplicatePublishOutputFiles>false</ErrorOnDuplicatePublishOutputFiles>
</PropertyGroup>
解决方案#2:
排除要复制到输出文件夹的有问题的文件。
在此示例中,我们将排除以下文件:compilerconfig.json
和 package.json
。
将以下行添加到您的 common.props
(位于解决方案的根目录中):
<Content Remove="compilerconfig.json;package.json"/>
<None Include="compilerconfig.json;package.json">
<ExcludeFromSingleFile>true</ExcludeFromSingleFile>
<CopyToPublishDirectory>Never</CopyToPublishDirectory>
</None>
关于c# - 发布错误: Found multiple publish output files with the same relative path,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69919664/