首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法在NuGet中更新或卸载VS2012包管理器

无法在NuGet中更新或卸载VS2012包管理器
EN

Stack Overflow用户
提问于 2013-02-05 18:45:25
回答 4查看 33.7K关注 0票数 46

我无法更新或卸载Visual 2012的NuGet包管理器。我环顾了几个解决方案,但没有找到有效的解决方案。

以管理员身份运行Visual 2012 .

试图更新NuGet包管理器失败了,我在日志末尾得到了下面的错误对话框:

2/5/2013 10:38:09 AM -开始安装Microsoft Visual Studio终极2012的扩展.2/5/2013 10:38:09 AM -升级'NuGet包管理器‘,版本2.0.30625.9003到2.2.31210.9045。2/5/2013 10:38:10 AM -安装错误: System.IO.IOException:进程无法访问该文件,因为它正在被另一个进程使用。在Microsoft.VisualStudio.ExtensionManager.ExtensionManagerService.AtomicallyDeleteFiles(IEnumerable1 filePaths, Boolean justMarkForDeletion) at Microsoft.VisualStudio.ExtensionManager.ExtensionManagerService.DeleteDiscoverableFiles(IInstalledExtension extension) at Microsoft.VisualStudio.ExtensionManager.ExtensionManagerService.UninstallInternal(IInstalledExtension extension, Boolean forceDelete) at Microsoft.VisualStudio.ExtensionManager.ExtensionManagerService.CommitInstalledAndUninstalledExtensions(IEnumerable1 installedExtensions的System.IO.__Error.WinIOError(Int32 errorCode,String maybeFullPath) at System.IO.__Error.WinIOError() at System.IO.File.InternalMove(String sourceFileName,String destFileName,Boolean ),在Microsoft.VisualStudio.ExtensionManager.ExtensionManagerService.BeginInstall(IInstallableExtension installableExtension的IEnumerable1 uninstalledExtensions, IEnumerable1 packComponentChanges,在en2#的扩展处,布尔的1 uninstalledExtensions, IEnumerable1 uninstalledExtensions, IEnumerable)的System.IO.File.InternalMove(en21#)

然后是一个弹出窗口告诉我:

进程加农炮访问该文件,因为它正在被另一个进程使用。

当我试图先卸载扩展时(每个some solutions),我会收到与上面相同的弹出消息,告诉我正在使用该进程!

我在尝试实现这一目标时所采取的步骤:

  1. 我已经多次重新启动VS2012,不管是否加载了项目。
  2. 我重新启动了计算机几次,除了VS2012,什么也没有启动。
  3. 我已经从网上下载了NuGet安装程序,并尝试安装它,启动VS2012 (重启后的第一件事)。

对于步骤3,我会收到与试图在Visual 2012中更新时相同的一系列对话框/错误。

无论我尝试什么,我都得不到最新的版本!有人有别的把戏吗?

我还注意到,NuGet现在显然不起作用。"Package控制台“或”“都不会做任何事情。

EN

回答 4

Stack Overflow用户

发布于 2013-10-18 09:21:07

来源:

  • http://www.paraesthesia.com/archive/2013/07/30/upgrading-nuget-the-process-cannot-access-the-file-because-it.aspx

这正是帮助我的:

  1. 关闭Visual的所有实例。
  2. 转到您的全局Visual扩展文件夹。NuGet并不安装在您的每个用户文件夹中;相反,您将在程序文件中看到它。类似于: C:\Program (X86)\MicrosoftVisualStudio11.0\Common7\IDE\扩展名
  3. 看看那个文件夹。您将看到许多随机命名的文件夹,如“sdjfksiov.djd”等等。其中大部分(如果不是全部)都是NuGet。您会希望知道哪些是NuGet,哪些不是,特别是如果您安装了其他扩展。(您可以判断它是否是NuGet,因为其中会有一堆NuGet.*.dll文件。如果你没有看到NuGet的东西在里面,你会想要保留它。)
  4. 将扩展文件夹重命名为: C:\Program (x86)\Microsoft 11.0\Common7\IDE\Extensions_RENAMED
  5. 直接从Visual扩展库下载NuGet。
  6. 执行刚才下载的NuGet.Tools.vsix文件。不要通过Visual来完成它。只需双击.vsix文件即可安装它。
  7. NuGet应该成功安装。作为安装的一部分,它将再次创建扩展文件夹,因此您将再次看到C:\Program (X86)\MicrosoftVisualStudio11.0\Common7\IDE\ Extensions
  8. 打开您的重命名扩展文件夹,并将所有非NuGet扩展移到新的扩展文件夹中。
  9. 现在打开。您应该会看到新版本的NuGet已安装和工作。
  10. 一旦您验证了所有的功能,就可以删除重命名的扩展文件夹。
  11. 下载VSIX并右击解锁文件并再次安装
票数 82
EN

Stack Overflow用户

发布于 2013-07-05 04:43:25

我使用的是VS2010,通过“添加删除程序”卸载NuGet软件包管理器,然后删除这个目录,从而解决了这个问题:

代码语言:javascript
复制
C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\Extensions\Microsoft Corporation\Nuget Package Manager

然后我就可以运行NuGet.Tools.vsix程序了。

票数 7
EN

Stack Overflow用户

发布于 2015-03-06 06:13:34

我安装了VS 2013 Pro。对我来说,解决这个问题的办法是重新启动安全模式,并在那里重新安装NuGet。

您可能还想查看Adam D在下面链接中的帖子(插件被反恶意软件阻止):

Can't Update or Uninstall NuGet Package Manager in VS2012

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14714619

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档