簡體   English   中英

NuGet不斷崩潰Visual Studio 2013

[英]NuGet keeps crashing Visual Studio 2013

我正在嘗試更新我的Mvc Web項目中的NuGet依賴項。 我要去我的項目,右鍵單擊它,然后去管理NuGet包。 彈出NuGet包管理器,然后單擊“更新”,我要更新的特定包是“Microsoft ASP.NET Web Pages”和“jQuery”。 如果我單擊其中任何一個,然后單擊更新按鈕,彈出更新窗口,然后幾乎立即崩潰。 然后Visual Studio將重新啟動,當我打開我的項目時,沒有任何更新。 該錯誤是關於嘗試寫入受保護的內存的問題。

有沒有人對可能造成這種情況有什么建議? 我在Windows 7上運行Visual Studio 2013 Update 4。

更新

作為這個問題的后續內容,我只是想補充一些細節。 我使用/ log標志運行Visual Studio,希望獲得更多信息。 這是文件中一些最后條目的轉儲:

<entry>
  <record>749</record>
  <time>2015/06/10 15:24:27.421</time>
  <type>Information</type>
  <source>VisualStudio</source>
  <description>Entering function CVsPackageInfo::HrInstantiatePackage</description>
  <guid>{77A5A151-6A9B-4D08-BC38-340AB29566E2}</guid>
</entry>
<entry>
  <record>750</record>
  <time>2015/06/10 15:24:27.421</time>
  <type>Information</type>
  <source>VisualStudio</source>
  <description>Begin package load [CctSharedPackage]</description>
  <guid>{77A5A151-6A9B-4D08-BC38-340AB29566E2}</guid>
</entry>
<entry>
  <record>751</record>
  <time>2015/06/10 15:24:27.514</time>
  <type>Information</type>
  <source>VisualStudio</source>
  <description>End package load [CctSharedPackage]</description>
  <guid>{77A5A151-6A9B-4D08-BC38-340AB29566E2}</guid>
</entry>
<entry>
  <record>752</record>
  <time>2015/06/10 15:24:29.748</time>
  <type>Information</type>
  <source>VisualStudio</source>
  <description>Entering function CVsPackageInfo::HrInstantiatePackage</description>
  <guid>{BC9CA0B3-BB4F-449A-967C-29A8FAE32086}</guid>
</entry>
<entry>
  <record>753</record>
  <time>2015/06/10 15:24:29.748</time>
  <type>Information</type>
  <source>VisualStudio</source>
  <description>Begin package load [Microsoft VSDesigner WCF Package]</description>
  <guid>{BC9CA0B3-BB4F-449A-967C-29A8FAE32086}</guid>
</entry>
<entry>
  <record>754</record>
  <time>2015/06/10 15:24:29.763</time>
  <type>Information</type>
  <source>VisualStudio</source>
  <description>End package load [Microsoft VSDesigner WCF Package]</description>
  <guid>{BC9CA0B3-BB4F-449A-967C-29A8FAE32086}</guid>
</entry>
<entry>
  <record>755</record>
  <time>2015/06/10 15:24:30.653</time>
  <type>Information</type>
  <source>VisualStudio</source>
  <description>Entering function VBDispatch::GetTypeLib</description>
</entry>
<entry>
  <record>756</record>
  <time>2015/06/10 15:24:30.653</time>
  <type>Information</type>
  <source>VisualStudio</source>
  <description>Leaving function VBDispatch::GetTypeLib</description>
  <guid>{80CC9F66-E7D8-4DDD-85B6-D9E6CD0E93E2}</guid>
</entry>
<entry>
  <record>757</record>
  <time>2015/06/10 15:24:30.653</time>
  <type>Information</type>
  <source>VisualStudio</source>
  <description>Entering function VBDispatch::GetTypeLib</description>
</entry>
<entry>
  <record>758</record>
  <time>2015/06/10 15:24:30.653</time>
  <type>Information</type>
  <source>VisualStudio</source>
  <description>Leaving function VBDispatch::GetTypeLib</description>
  <guid>{80CC9F66-E7D8-4DDD-85B6-D9E6CD0E93E2}</guid>
</entry>
<entry>
  <record>759</record>
  <time>2015/06/10 15:24:32.621</time>
  <type>Information</type>
  <source>VisualStudio</source>
  <description>Entering function CVsPackageInfo::HrInstantiatePackage</description>
  <guid>{5FCC8577-4FEB-4D04-AD72-D6C629B083CC}</guid>
</entry>
<entry>
  <record>760</record>
  <time>2015/06/10 15:24:32.621</time>
  <type>Information</type>
  <source>VisualStudio</source>
  <description>Begin package load [NuGetPackage]</description>
  <guid>{5FCC8577-4FEB-4D04-AD72-D6C629B083CC}</guid>
</entry>
<entry>
  <record>761</record>
  <time>2015/06/10 15:24:32.637</time>
  <type>Information</type>
  <source>VisualStudio</source>
  <description>End package load [NuGetPackage]</description>
  <guid>{5FCC8577-4FEB-4D04-AD72-D6C629B083CC}</guid>
</entry>

對我來說,似乎沒有什么不尋常或不合適的地方。 我查看了日志文件中顯示的guid:

{5FCC8577-4FEB-4D04-AD72-D6C629B083CC} - NuGetConsole.Implementation.PowerConsoleToolWindow
{80CC9F66-E7D8-4DDD-85B6-D9E6CD0E93E2} - SSMS DTE 12.0

我原本以為這被隔離到一個特定的項目。 顯然即使我去創建一個新項目,當我嘗試更新它時也會發生同樣的事情。

在這一切發生之前我做的最后一件事是安裝Windows更新。 我記得其中一個更新是Sql Server 2014 Update 1.我使用的是Management Studio 2014,但我想不出NuGet和Management Studio之間的任何關系。

所以希望這些信息可以幫助我或幫助其他人解決這個問題! 有什么想法嗎?

更新2

我在這里粘貼我的異常,從事件查看器中檢索:

Application: devenv.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.AccessViolationException
Stack:
   at EnvDTE.ProjectItem.get_Kind()
   at NuGet.VisualStudio.ProjectExtensions+<>c__DisplayClassb.<GetChildItems>b__a(EnvDTE.ProjectItem)
   at System.Linq.Enumerable+WhereSelectEnumerableIterator`2[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]].MoveNext()
   at System.Linq.Enumerable.Any[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]](System.Collections.Generic.IEnumerable`1<System.__Canon>)
   at NuGet.ProjectSystemExtensions.DeleteFiles(NuGet.IProjectSystem, System.Collections.Generic.IEnumerable`1<NuGet.IPackageFile>, System.Collections.Generic.IEnumerable`1<NuGet.IPackage>, System.Collections.Generic.IDictionary`2<NuGet.FileTransformExtensions,NuGet.IPackageFileTransformer>)
   at NuGet.ProjectManager.RemovePackageReferenceFromProject(NuGet.IPackage)
   at NuGet.ProjectManager.Execute(NuGet.PackageOperation)
   at NuGet.ProjectManager.Execute(NuGet.IPackage, NuGet.IPackageOperationResolver)
   at NuGet.ProjectManager.AddPackageReference(NuGet.IPackage, Boolean, Boolean)
   at NuGet.ProjectManager.UpdatePackageReference(NuGet.IPackage, Boolean, Boolean)
   at NuGet.VisualStudio.VsPackageManager+<>c__DisplayClass5a.<UpdatePackageReference>b__58()
   at NuGet.VisualStudio.VsPackageManager.RunProjectAction(NuGet.IProjectManager, System.Action)
   at NuGet.VisualStudio.VsPackageManager.UpdatePackageReference(NuGet.IProjectManager, NuGet.IPackage, Boolean, Boolean)
   at NuGet.VisualStudio.VsPackageManager+<>c__DisplayClass1a.<UpdatePackages>b__18()
   at NuGet.VisualStudio.VsPackageManager+<>c__DisplayClass67.<ExecuteOperationsWithPackage>b__65()
   at NuGet.VisualStudio.VsPackageManager.RunSolutionAction(System.Action)
   at NuGet.VisualStudio.VsPackageManager.ExecuteOperationsWithPackage(NuGet.IProjectManager, NuGet.IPackage, System.Collections.Generic.IEnumerable`1<NuGet.PackageOperation>, System.Action, NuGet.ILogger)
   at NuGet.VisualStudio.VsPackageManager.UpdatePackages(NuGet.IProjectManager, System.Collections.Generic.IEnumerable`1<NuGet.IPackage>, System.Collections.Generic.IEnumerable`1<NuGet.PackageOperation>, Boolean, Boolean, NuGet.ILogger)
   at NuGet.Dialog.Providers.UpdatesProvider.ExecuteCommand(NuGet.IProjectManager, NuGet.Dialog.Providers.PackageItem, NuGet.VisualStudio.IVsPackageManager, System.Collections.Generic.IList`1<NuGet.PackageOperation>)
   at NuGet.Dialog.Providers.OnlineProvider.ExecuteCommandOnProject(EnvDTE.Project, NuGet.Dialog.Providers.PackageItem, NuGet.VisualStudio.IVsPackageManager, System.Collections.Generic.IList`1<NuGet.PackageOperation>)
   at NuGet.Dialog.Providers.OnlineProvider.ExecuteCore(NuGet.Dialog.Providers.PackageItem)
   at NuGet.Dialog.Providers.PackagesProviderBase.OnRunWorkerDoWork(System.Object, System.ComponentModel.DoWorkEventArgs)
   at System.ComponentModel.BackgroundWorker.OnDoWork(System.ComponentModel.DoWorkEventArgs)
   at System.ComponentModel.BackgroundWorker.WorkerThreadStart(System.Object)
   at System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr, System.Object[], System.Object, System.Object[] ByRef)
   at System.Runtime.Remoting.Messaging.StackBuilderSink.AsyncProcessMessage(System.Runtime.Remoting.Messaging.IMessage, System.Runtime.Remoting.Messaging.IMessageSink)
   at System.Runtime.Remoting.Proxies.AgileAsyncWorkerItem.ThreadPoolCallBack(System.Object)
   at System.Threading.QueueUserWorkItemCallback.WaitCallback_Context(System.Object)
   at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
   at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
   at System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem()
   at System.Threading.ThreadPoolWorkQueue.Dispatch()
   at System.Threading._ThreadPoolWaitCallback.PerformWaitCallback()

有一個類似於我的StackOverflow問題 ,但對於Visual Studio 2010.我們的堆棧跟蹤是相同的。 不幸的是,問題從未得到解答。

最后更新

我最后通過進入Visual Studio設置並修復安裝來解決這個問題。

修復你的VS 2013,然后建議卸載Nuget Package Manager,然后下載並重新安裝它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM