【问题标题】:Getting Nuget Package missing error获取 Nuget 包丢失错误
【发布时间】:2016-04-03 15:29:35
【问题描述】:

我在编译我的项目时遇到以下问题。它是一个 MVC 5 应用程序。这是错误:

严重性代码描述项目文件行抑制状态 错误此项目引用此计算机上缺少的 NuGet 包。使用 NuGet 包还原下载它们。有关详细信息,请参阅http://go.microsoft.com/fwlink/?LinkID=322105。缺少的文件是 ..\packages\Microsoft.Net.Compilers.1.0.0\build\Microsoft.Net.Compilers.props。 WikidoctorAdmin E:\My Projects\Wiki-Doctor\Wiki-Doctor.com\Wiki-Doctor.com\WikidoctorAdmin\WikidoctorAdmin.csproj 2107

请帮我解决这个错误。

【问题讨论】:

  • 您是否尝试按照错误消息的提示执行操作 - 使用 NuGet 包还原?
  • 阅读错误信息?
  • @vidstige 错误所在。恢复什么都不做,事实上我遇到了这个错误,在恢复选项中甚至没有任何选择。

标签: c#


【解决方案1】:

我遇到了同样的问题,并通过在文本编辑器中打开项目并删除以下部分来解决它:

<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
    <PropertyGroup>
      <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
    </PropertyGroup>
    <Error Condition="!Exists('..\packages\Microsoft.Net.Compilers.1.0.0\build\Microsoft.Net.Compilers.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.Net.Compilers.1.0.0\build\Microsoft.Net.Compilers.props'))" />
    <Error Condition="!Exists('..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.0\build\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.0\build\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props'))" />
</Target>

这个项目我不需要 Nuget。

希望这会有所帮助。

【讨论】:

  • 即使在我的项目中使用 nuget 也为我工作
  • 这太棒了!谢谢!
  • 真棒@AxelWass
  • 我应该在哪里找到上面的代码?在哪个文件中??
  • 谢谢 .csproj 文件
【解决方案2】:

您可以通过以下两种方式之一解决此问题:

在工具/Nuget 包管理器下:

Menu screen capture

1) 选择第一个选项(Package manager Console)。

  • 将出现包管理器控制台窗口(通常位于屏幕底部)
  • 您应该会看到一个按钮,上面写着“Restore Missing packages”...点击它。

此方法仅适用于该项目...您需要为每个缺少包的项目重做此方法

2) 选择包管理器设置

  • 确保“允许 Nuget 下载”复选框丢失 包”被选中
  • 重新构建您的解决方案

从现在开始,Nuget 将自动下载丢失的包。这更容易,但可能并不总是您想要的。

【讨论】:

  • 重置按钮没有出现在控制台(VS-2015)中并且复选框已经被选中,所以这对我来说没有成果。无论如何,谢谢。
【解决方案3】:

项目名称超过 248 个字符。您需要将路径重命名为 248 个字符以下,然后打开解决方案并重新构建,然后更新 nuget。

【讨论】:

    【解决方案4】:

    这对我有类似的错误有用 -
    转到您抱怨的项目参考资料 - 找到带有黄色标记的参考资料 打开解决方案 nuget 包管理器并“重新安装”具有黄色标记 dll 的 nuget 包。

    一一重新安装的简单方法-在右侧选择nuget,在左上部分将选中项目。 在左下部分 - 向下选择一个版本,安装,向上选择一个版本(您需要的版本),安装 - 对所有有问题的 nuget 重复此操作

    【讨论】:

      【解决方案5】:

      我遇到了同样的问题,我是这样解决的: - 擦除解决方案项目下的每个 obj 和 bin 文件夹, - 使用 NuGet 包管理器恢复和更新所有包。 希望对您有所帮助。

      【讨论】:

        猜你喜欢
        • 2020-11-06
        • 2013-07-21
        • 1970-01-01
        • 2013-10-03
        • 1970-01-01
        • 2021-06-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多