【问题标题】:Why can't Visual Studio find this nuget package's .props file?为什么 Visual Studio 找不到这个 nuget 包的 .props 文件?
【发布时间】:2018-04-13 01:27:51
【问题描述】:

由于一些 git 项目更改,当我尝试构建时,我得到一个错误:

此项目引用此计算机上缺少的 NuGet 包。使用 NuGet 包还原下载它们。有关详细信息,请参阅http://go.microsoft.com/fwlink/?LinkID=322105。缺少的文件是 ..\packages\MSTest.TestAdapter.1.1.11\build\net45\MSTest.TestAdapter.props。

对项目的引用包含四个缺失的引用,其中两个 Microsoft.VisualStudio.TestPlatform.TestFrameworkMicrosoft.VisualStudio.TestPlatform.TestFramework.Extensions 似乎相关。

另外两个,如果它被证明是相关的,是SystemSystem.Core,但它们没有引起任何问题......这很奇怪,因为我肯定会使用它们。

那个丢失的文件,即错误消息中的那个,绝对存在。

我已尝试卸载并重新安装这两个软件包,但似乎没有任何帮助。

【问题讨论】:

  • 我收到此错误是因为我在运行dotnet build <sln file name> 之前尝试使用dotnet restore <sln file name> 而不是nuget restore <sln file name>。使用nuget restore <sln file name>,它开始工作了。

标签: c# visual-studio mstest


【解决方案1】:

使用您喜欢的文本编辑器打开项目.csproj 文件并删除对

的所有引用

MSTest.TestAdapter.props.

编辑:这样做是安全的,所发生的只是您已删除 DLL,但出于某种原因,您的项目文件仍将其作为依赖项引用。

【讨论】:

  • 这样做安全吗?
  • 在我的例子中,VSTS 开始发现缺少像 Moq、MSTest 等库。不幸的是,这个答案并没有说明为什么可以删除这种对道具的自动引用......
  • 对我来说,这是一个包文件夹向上移动的情况。项目文件保留了旧的引用,直到我们尝试自动部署时它才明显。如果您在项目文件中看到多个条目,请避免删除良好的参考,否则您可能会遇到更多问题。
【解决方案2】:

我会将@JoshuaDuxbury 的回答修改为:您需要清除过时的引用MSTest.TestAdapter.props

在我的例子中,我刚刚将 MSTest.TestAdapter NuGet 从 1.3.2 更新为 2.0.0,但显然当我这样做时,Visual Studio 并没有完美地清理我的 .csproj 文件。

所以,我不得不删除在两个地方突出显示的 superflous MSTest.TestAdapter.props

项目文件顶部附近:

...再次在文件底部: 一旦我这样做了,我的 CI 管道就能够再次正确构建所有内容。

有些目光敏锐的人可能会注意到上面显示的 MSTest.TestAdapter 1.3.2 的一些有趣之处:似乎包文件夹的路径已关闭!但这将是一个不同线程的主题(或者可能是对构建管道不满意的原因的替代解释......也许只是修复你的包路径)。

【讨论】:

    【解决方案3】:

    我的问题没有出现在我的开发盒上,而是出现在 Azure Build Pipeline 上。我根据其他答案删除了有问题的道具文件,但无济于事。最终,我不得不将Nuget restore 步骤添加到我的 Azure 构建管道中,并在构建之前将其移动到正确的插槽:

    【讨论】:

      【解决方案4】:

      我不知道我是怎么做到的,但我遇到了同样的错误,我认为文件在这里,但实际上它们不是......所以任何有这个问题的人都会仔细检查路径。 在我的情况下,Packages 文件夹与项目文件处于同一级别,但是它正在父目录中查找文件。 Nuget 还原和更新包-重新安装 没有修复任何东西。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-09-27
        • 2022-06-29
        • 1970-01-01
        • 1970-01-01
        • 2021-04-23
        • 2023-03-12
        相关资源
        最近更新 更多