【问题标题】:Error while removing project dependency in VS2010在 VS2010 中删除项目依赖项时出错
【发布时间】:2012-10-10 11:31:48
【问题描述】:

我有一个包含多个项目的大型解决方案。 一些项目依赖于其他项目(尽管从来没有循环依赖)。

当我尝试删除项目的依赖项时,我收到一条错误消息,例如“依赖项已由项目系统添加,无法删除”。这个错误的原因是什么?我该如何解决这个问题?

【问题讨论】:

  • VS2017+C++:在解决方案资源管理器中,移除项目下References节点下的依赖。您还需要编辑 sln 文件,并删除 ProjectSection(ProjectDependencies) = postProject 部分。并且有时候VS会恢复sln文件,所以如果还是不行的话,可以重新检查一下sln文件,删除掉。

标签: visual-studio-2010 project dependency-properties


【解决方案1】:

当我尝试手动编辑由我们的 CMake 系统生成的项目/解决方案时,有时会遇到此问题。我手动解决:

  • 在您喜欢的文本编辑器中打开依赖的 .vcproj 文件。
  • 找到你要移除的依赖对应的标签(标签的include属性会包含依赖项目的名称)。
  • 删除整个 元素(即以 开头并以 结尾)。保存文件。
  • 重新加载解决方案。

【讨论】:

  • 这对我来说也适用于 Visual Studio 2015 中的 .vcxproj 文件。
【解决方案2】:

我遇到了同样的问题。但我可以通过以下方式解决它

  • 右键项目,选择属性
  • 通用属性下选择Framework and References
  • 选择不需要的参考。
  • 点击删除参考

【讨论】:

    【解决方案3】:

    或者 =>
    To remove a reference in Visual C#:

    1. 在解决方案资源管理器中,打开项目下的引用节点 节点。
    2. 右键单击引用并单击删除

    在 Visual Basic 中删除引用:

    1. 在解决方案资源管理器中,右键单击“我的项目”节点 项目并选择属性。
    2. 单击“参考”选项卡。
    3. 在“参考”列表中,选择要删除的参考。
    4. 点击删除按钮

    【讨论】:

    • 我已经尝试过了,并且得到了原始文章中列出的错误,只是一个注释。
    【解决方案4】:

    对于 Visual Studio 2013: 在 C++ 项目上(希望其他人也一样)

    1. 解决方案资源管理器中,选择项目并右键单击以选择属性
    2. 在属性窗口的左侧窗格中,选择 Common properties => References
    3. 在窗口右侧,您可以选择添加或删除其他依赖项。
    4. 然后选择确定,保存

    【讨论】:

      【解决方案5】:

      如果您的项目只有 .sln 文件而没有任何 .csproj,您可能需要

      1. 检查 ProjectReferences 属性并删除那里的参考项目
      2. 将部分从 Project 删除到 EndProject
      3. 同时删除 GlobalSection(ProjectConfigurationPlatforms) 下的相关行

      【讨论】:

        【解决方案6】:

        作为上述@malenkiy_scot 的补充一点,对于您要保留的ProjectReference 项目,请仔细检查项目guid 是否适合该项目。在依赖的 .vcproj 文件中,找到上面的 ProjectReference 标记,以及您要保留的每个标记:

        • 在文本编辑器中打开引用项目的 .vcproj 文件
        • 在 ProjectGuid 标签中找到它的 guid
        • 将此与依赖 .vcproj 文件中该引用的项目标记进行比较(不区分大小写)
        • 如果不相同,请将 Project 标签中的 guid 替换为引用项目的 ProjectGuid 标签中的 guid
        • 保存项目文件并重新加载解决方案

        Visual Studio 使用项目 guid 而不是名称来确定依赖关系。因此,如果您手动编辑了依赖项的名称而不是 guid(就像我所做的那样),您会收到错误消息。

        【讨论】:

          【解决方案7】:

          在 VS17 中,右键单击 References 节点,然后选择 OptimiseReferences... 有助于解决您的依赖关系。也可以右键单击项目并单击 BuildDependencies... ProjectDependencies,这可能是您设置依赖项的位置。

          【讨论】:

            【解决方案8】:

            1- 右键点击项目的References,然后点击Add Reference...

            2- 从解决方案选项卡中取消选中依赖项目

            【讨论】:

              【解决方案9】:
              • 在解决方案资源管理器窗口中,右键单击项目并 选择“编辑项目文件”。 project.csproj 文件将在编辑器中打开。
              • 找出嵌套标签的那个。
              • 删除整个(连同结束标记)。

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 2018-05-10
                • 1970-01-01
                • 2020-05-29
                • 2020-12-25
                • 1970-01-01
                • 2021-10-02
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多