【发布时间】:2023-03-07 01:38:01
【问题描述】:
这是一个非常烦人的 VS 错误,我在 VS 2019 16.8.1
我花了很多时间修复它:
包含重复的“编译”项目。 .NET SDK 包括 默认情况下,从您的项目目录中“编译”项目。你可以 从项目文件中删除这些项目,或设置 'EnableDefaultCompileItems' 属性为 'false' 如果你想 明确地将它们包含在您的项目文件中。了解更多信息, 见https://aka.ms/sdkimplicititems。重复的项目是: 'Program.cs' Service.Host Files\dotnet\sdk\5.0.101\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.Sdk.DefaultItems.targets 295
我无法理解导致此错误的原因。
我把 *.csproj 文件中的Include 标签注释掉了,但是问题是我有30多个项目,突然他们都有相同的重复错误,通过所有这些来修复这样一个神秘的错误似乎是不安全的操作,其中一些项目是很久没有触及的遗留项目。
评论Include标签的解决方案中的另一个问题是我有一些具有这种包含结构的项目:
<ItemGroup>
<Compile Include="Contracts.cs" />
<Compile Include="IKey.cs">
<DependentUpon>Contracts.cs</DependentUpon>
</Compile>
<Compile Include="ISigner.cs">
<DependentUpon>Contracts.cs</DependentUpon>
</Compile>
</ItemGroup>
评论这将影响项目结构。
我尝试注释掉文件中的CheckForDuplicateItems标签:
"C:\Program Files\dotnet\sdk\5.0.101\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.Sdk.DefaultItems.targets",
错误消失了。
编辑
我刚刚注意到 .NET 5 版本 (..\sdk\5.0.101..) 包含在目标文件路径中,我只有一个使用 .NET 5 的项目,这会导致问题吗?
【问题讨论】:
-
嗨,关于这个问题的任何更新?
标签: msbuild visual-studio-2019 .net-5