目 录CONTENT

文章目录

快速解决编译报错 "未知的生成错误“已添加了具有相同键的项

DevWiki
2022-04-22 / 0 评论 / 0 点赞 / 116 阅读 / 0 字 / 正在检测是否收录...
温馨提示:
本文最后更新于2024-03-30,若内容或图片失效,请留言反馈。 部分素材来自网络,若不小心影响到您的利益,请联系我们删除。
updated: 2022/05/17 10:40:05
status: publish
author: DevWiki
categories: 
  - .NET
tags: 
  - .NET
  - wpf
customSummary: 
mathjax: auto
noThumbInfoEmoji: 
noThumbInfoStyle: default
outdatedNotice: no
parseWay: auto
reprint: standard
thumb: 
thumbChoice: default
thumbDesc: 
thumbSmall: 
thumbStyle: default

在项目合并代码时出现以下问题:

Microsoft.WinFx.targets(712, 5): [RG1000] 未知的生成错误“已添加了具有相同键的项。”

很明显错误的原因就是某个地方出现了相同的键值

当你双击错误时会打开一个 NET framework 的错误, 但是不会提示具体错误在哪.

<ResourcesGenerator
    ResourceFiles="@(MainEmbeddedFiles)"
    OutputPath="$(IntermediateOutputPath)"
    OutputResourcesFile="$(IntermediateOutputPath)$(_ResourceNameInMainAssembly)"
    Condition="'@(MainEmbeddedFiles)' != ''">

    <!-- Put the generated files in item FileWrites so that they can be cleaned up appropriately in a next Rebuild -->
    <Output ItemName="FileWrites" TaskParameter="OutputResourcesFile" />
</ResourcesGenerator>

如果项目比较大, 包含较多的控件, Page, Window, 就很难去排查到底是哪个出现此问题.

如果你去百度或者Google 搜索发现网上确实很多人出现, 但是都特定的项目出现给出了特定的文件,无法类比去排查.

如何快速定位此问题呢?

使用命令行编译, 来查看具体报错, 编译命令如下:

MSBuild.exe xxx.sln /filelogger /fileLoggerParameters:Verbosity=diag

等待编译结果:

  C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\Microsoft.WinFx.targets(712,5): error RG1000: 未知的生成错误“已添加了具有相同键的项。” [D:\Code\xylink\Windows\custom\private_new\xxx\xxx\xxx.csproj]

可以看出是某个项目的工程文件出现相同键值的问题. 这样就可以定位具体的位置了.

0
  1. 支付宝打赏

    qrcode alipay
  2. 微信打赏

    qrcode weixin
博主关闭了所有页面的评论