NuGet包还原失败:另一个进程使用的Microsoft.Bcl.Build.Tasks.dll

时间:2016-11-08 03:28:39

标签: nuget-package-restore

  

项目MyProject.Application的NuGet包还原失败:   进程无法访问该文件   ' C:\ MySolution \包\ Microsoft.Bcl.Build.1.0.21 \建立/ Microsoft.Bcl.Build.Tasks.dll'   因为它正被另一个进程使用..

知道如何解决这个问题吗?感谢。

8 个答案:

答案 0 :(得分:38)

在Windows资源管理器中,转到为我的解决方案安装NuGet软件包的文件夹

<VS Solution>\packages\

并删除了所有Microsoft.Bcl。*文件夹。 之后可以毫无问题地重建解决方案。

答案 1 :(得分:3)

在进程资源管理器中找到msbuild.exe并将其删除。

答案 2 :(得分:0)

在我的情况下,在安装了visual studio组件的更新后,出现了这个问题。

作为一个选项,您可以尝试从Visual Studio中卸载Nuget插件,然后重新安装(在Tools - &gt; Extensions and Updates中)。

之后,问题包成功恢复。

答案 3 :(得分:0)

重新启动Visual Studio似乎工作 - 如果你在某些时候打开VS的多个副本似乎会发生 - 关闭所有副本并且它似乎修复它 - 对我来说它总是Newtonsoft.json 11.0.2导致问题由于某些原因。同时结束任何MSBuild进程的任务。

如果清除NuGet缓存(或删除.nuget \ packages文件夹,问题不会消失,这表明在恢复过程中发生了锁定。

答案 4 :(得分:0)

查看您的.csproj文件。如果您发现标签“ PropertyGroup”和“ ErrorText”的内容如下:

“此项目引用了此计算机上缺少的NuGet软件包。请使用NuGet软件包还原下载它们。有关更多信息,请参见http://go.microsoft.com/fwlink/?LinkID=322105。丢失的文件为{0}。”

您可以安全地删除这些行并存储更改后的.csproj文件。然后,您应该能够重建您的项目。在某些情况下,这对我有用。

答案 5 :(得分:0)

尝试从提升的命令提示符下运行此命令:

taskkill / im devenv.exe

答案 6 :(得分:0)

在尝试还原位于网络驱动器上的解决方案中的nuget软件包时,我遇到了很多此类问题。只需将其移至本地磁盘即可立即获得帮助

答案 7 :(得分:0)

关闭Visual Studio并杀死所有msbuild.exe实例,然后从程序包文件夹中删除Microsoft.Bcl *文件夹。