我通过右键单击解决方案资源管理器上的解决方案创建了一个Directory.Build.props文件,并将其命名为XML。然后输入这个XML并尝试构建,但是遇到了错误:
<Project>
<PropertyGroup>
<Version>1.2.3</Version>
<Authors>John Doe</Authors>
<PackageReference Include="Microsoft.CodeAnalysis.NetAnalyzers" Version="6.0.0">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference>
</PropertyGroup>
</Project>错误是:The attribute "Include" in element <PackageReference> is unrecognized.和
Project "C:\redacted\Directory.Build.props" was not imported by "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Microsoft.Common.props" at (33,3), due to the file being invalid. ProjectName C:\Users\me\source\redacted\ProjectName\Directory.Build.props 33 我在这里很困惑。其他文章说要定位MSBuild,我知道它在我的机器上。在我添加XML之前,构建工作得很好。任何指导都将不胜感激!顺便说一下,我目前正在使用Visual 2022。
发布于 2022-01-25 19:02:03
PackageReference元素需要在ItemGroup中--您已经在PropertyGroup中得到了它。它应该是这样的:
<Project>
<PropertyGroup>
<Version>1.2.3</Version>
<Authors>John Doe</Authors>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.CodeAnalysis.NetAnalyzers" Version="6.0.0">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference>
</ItemGroup>
</Project>发布于 2022-01-25 19:09:12
有一次我遇到了同样的问题,我发现它是由‘\xef\xbb\xbf#’引起的,它是‘Unicode(Byte)’,由某些文本编辑器(例如Notepad++ )添加的不可见字符组成。BOM通常是一个神奇的数字,用于将信息传递给读取文件的程序,例如Unicode字符编码或endianess,但它的存在可能会干扰不期望它的软件。我通过侥幸找到它的方式是,我在github上有我的csproj文件,当我点击“编辑”时,BOM就像一个红色的点一样突出。我只是背了一下,然后一切都很顺利。
发布于 2022-07-21 08:37:43
我遇到了同样的问题,对我来说,这是由于无效的XML结构造成的:
<ItemGroup>
<PackageReference Include="Microsoft.VisualStudio.Threading.Analyzers" Version="17.2.32">
<PackageReference Include="Microsoft.CodeAnalysis.BannedApiAnalyzers" Version="3.3.3">
</PackageReference>
</ItemGroup>如您所见,第一个PackageReference标记没有关闭,导致第二个PackageReference标记上的错误The attribute "Include" in element <PackageReference> is unrecognized.完全相同。
有效的XML结构:
<ItemGroup>
<PackageReference Include="Microsoft.VisualStudio.Threading.Analyzers" Version="17.2.32"/>
<PackageReference Include="Microsoft.CodeAnalysis.BannedApiAnalyzers" Version="3.3.3"/>
</ItemGroup>我希望这能帮到别人!
https://stackoverflow.com/questions/70854208
复制相似问题