【发布时间】:2017-03-21 13:56:50
【问题描述】:
项目 MyProject.Application 的 NuGet 包还原失败: 进程无法访问文件 'C:\MySolution\packages\Microsoft.Bcl.Build.1.0.21\build/Microsoft.Bcl.Build.Tasks.dll' 因为它正在被另一个进程使用..
知道如何解决这个问题吗?谢谢。
【问题讨论】:
项目 MyProject.Application 的 NuGet 包还原失败: 进程无法访问文件 'C:\MySolution\packages\Microsoft.Bcl.Build.1.0.21\build/Microsoft.Bcl.Build.Tasks.dll' 因为它正在被另一个进程使用..
知道如何解决这个问题吗?谢谢。
【问题讨论】:
在 Windows 资源管理器中,转到为我的解决方案安装 NuGet 包的文件夹
<VS Solution>\packages\
并删除了所有 Microsoft.Bcl.* 文件夹。 之后可以毫无问题地重建解决方案。
【讨论】:
在进程资源管理器中找到 msbuild.exe 并杀死它。
【讨论】:
尝试在提升的命令提示符下运行它:
taskkill /im devenv.exe
【讨论】:
在我的情况下,这个问题是在我为 Visual Studio 组件安装更新后发生的。
作为一个选项,您可以尝试从 Visual Studio 中卸载 Nuget 插件,然后重新安装(在工具 -> 扩展和更新中)。
之后问题包成功恢复。
【讨论】:
重新启动 Visual Studio 似乎可以工作 - 如果您在某个时候打开了多个 VS 副本,它似乎会发生 - 关闭所有副本并且它似乎可以修复它 - 对我来说,它总是导致问题的 Newtonsoft.json 11.0.2因为某些原因。同时结束任何 MSBuild 进程的任务。
如果您清除 NuGet 缓存(或删除 .nuget\packages 文件夹,问题不会消失,这表明在还原过程中发生了锁定。
【讨论】:
查看您的 .csproj 文件。如果您发现标签“PropertyGroup”和“ErrorText”的内容如下:
您可以安全地删除这些行并存储更改后的 .csproj 文件。然后你应该能够重建你的项目。这在几种情况下对我有用。
【讨论】:
在尝试在位于网络驱动器上的解决方案中恢复 nuget 包时,我遇到了很多这样的问题。只需将其移至本地磁盘即可立即提供帮助
【讨论】:
关闭 Visual Studio 并杀死所有 msbuild.exe 实例,然后从包文件夹中删除 Microsoft.Bcl* 文件夹。
【讨论】: