I dug into the the Visual Studio logs to understand what was happening (C:UsersYourUserAppDataRoamingMicrosoftVisualStudio14.0ActivityLog.xml
). In mine, the messages were something like this:
<entry>
<record>846</record>
<time>2016/07/22 01:07:20.351</time>
<type>Information</type>
<source>VisualStudio</source>
<description>Entering function CVsPackageInfo::HrInstantiatePackage</description>
<guid>{2FFE45C4-5C73-493C-B187-F2E955FF875E}</guid>
</entry>
<entry>
<record>847</record>
<time>2016/07/22 01:07:20.367</time>
<type>Information</type>
<source>VisualStudio</source>
<description>Begin package load [Microsoft.VisualStudio.LanguageServices.TypeScript.TypeScriptPackage, Microsoft.VisualStudio.LanguageServices.TypeScript, Version=14.0.0.0, Culture=neutral]</description>
<guid>{2FFE45C4-5C73-493C-B187-F2E955FF875E}</guid>
</entry>
<entry>
<record>848</record>
<time>2016/07/22 01:07:20.374</time>
<type>Error</type>
<source>VisualStudio</source>
<description>LegacySitePackage failed for package [Microsoft.VisualStudio.LanguageServices.TypeScript.TypeScriptPackage, Microsoft.VisualStudio.LanguageServices.TypeScript, Version=14.0.0.0, Culture=neutral]Source: 'Microsoft.VisualStudio.Composition' Description: An exception was thrown while initializing part "Microsoft.CodeAnalysis.Editor.TypeScript.ScriptContexts.TypeScriptProjectProvider".
Microsoft.VisualStudio.Composition.CompositionFailedException: An exception was thrown while initializing part "Microsoft.CodeAnalysis.Editor.TypeScript.ScriptContexts.TypeScriptProjectProvider". ---> System.IO.IOException: Error while reading file: 'typescriptServices.js' from location: 'C:UsersYourUserAppDataLocalassemblydl3VGMMC3GX.G578WMQ7NH1.KPNffb2b4750c96cd3_2ec7d101'. ---> System.IO.FileNotFoundException: Could not find file 'C:UsersYourUserAppDataLocalassemblydl3VGMMC3GX.G578WMQ7NH1.KPNffb2b4750c96cd3_2ec7d101ypescriptServices.js'.
 at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
 at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
 at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
 at System.IO.StreamReader..ctor(String path, Encoding encoding, Boolean detectEncodingFromByteOrderMarks, Int32 bufferSize, Boolean checkHost)
 at System.IO.File.InternalReadAllText(String path, Encoding encoding, Boolean checkHost)
 at System.IO.File.ReadAllText(String path)
 at Microsoft.CodeAnalysis.Editor.TypeScript.ScriptServices.FileHelpers.ReadFile(String filePath)
 --- End of inner exception stack trace ---
 at Microsoft.CodeAnalysis.Editor.TypeScript.ScriptServices.FileHelpers.ReadFile(String filePath)
 at Microsoft.CodeAnalysis.Editor.TypeScript.ScriptServices.FileHelpers.GetToolsVersionFromFile(IUserSettingsProvider userSettingsProvider)
 at Microsoft.CodeAnalysis.Editor.TypeScript.ScriptContexts.TypeScriptProjectProvider..ctor(SVsServiceProvider serviceProvider, ScriptIdFactory scriptIdFactory, IUserSettingsProvider userSettingsProvider, IProjectCompilationSettingsProvider projectCompilationSettingsProvider)
--- End of stack trace from previous location where exception was thrown ---
 at Microsoft.VisualStudio.Telemetry.WindowsErrorReporting.WatsonReport.GetClrWatsonExceptionInfo(Exception exceptionObject)
 --- End of inner exception stack trace ---
 at Microsoft.VisualStudio.Composition.RuntimeExportProviderFactory.RuntimeExportProvider.RuntimePartLifecycleTracker.CreateValue()
 at Microsoft.VisualStudio.Composition.ExportProvider.PartLifecycleTracker.Create()
 at Microsoft.VisualStudio.Composition.ExportProvider.PartLifecycleTracker.MoveNext(PartLifecycleState nextState)
 at Microsoft.VisualStudio.Composition.ExportProvider.PartLifecycleTracker.MoveToState(PartLifecycleState requiredState)
 at Microsoft.VisualStudio.Composition.ExportProvider.PartLifecycleTracker.GetValueReadyToExpose()
 at Microsoft.VisualStudio.Composition.RuntimeExportProviderFactory.RuntimeExportProvider.<>c__DisplayClass15_0.<GetExportedValueHelper>b__0()
 at Microsoft.VisualStudio.Composition.RuntimeExportProviderFactory.RuntimeExportProvider.GetValueForImportElement(RuntimePartLifecycleTracker importingPartTracker, RuntimeImport import, RuntimeExport export, Func`3 lazyFactory)
 at Microsoft.VisualStudio.Composition.RuntimeExportProviderFactory.RuntimeExportProvider.GetValueForImportSite(RuntimePartLifecycleTracker importingPartTracker, RuntimeImport import)
 at Microsoft.VisualStudio.Composition.RuntimeExportProviderFactory.RuntimeExportProvider.RuntimePartLifecycleTracker.<CreateValue>b__10_0(RuntimeImport import)
 at System.Linq.Enumerable.WhereSelectArrayIterator`2.MoveNext()
 at System.Linq.Buffer`1..ctor(IEnumerable`1 source)
 at System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)
 at Microsoft.VisualStudio.Composition.RuntimeExportProviderFactory.RuntimeExportProvider.RuntimePartLifecycleTracker.CreateValue()
 at Microsoft.VisualStudio.Composition.ExportProvider.PartLifecycleTracker.Create()
 at Microsoft.VisualStudio.Composition.ExportProvider.PartLifecycleTracker.MoveNext(PartLifecycleState nextState)
 at Microsoft.VisualStudio.Composition.ExportProvider.PartLifecycleTracker.MoveToState(PartLifecycleState requiredState)
 at Microsoft.VisualStudio.Composition.ExportProvider.PartLifecycleTracker.GetValueReadyToExpose()
 at Microsoft.VisualStudio.Composition.ExportProvider.<>c__DisplayClass53_0.<CreateExport>b__0()
 at System.Lazy`1.CreateValue()
 at System.Lazy`1.LazyInitValue()
 at System.Lazy`1.get_Value()
 at Microsoft.VisualStudio.Composition.NetFxAdapters.MefV1ExportProvider.<>c__DisplayClass12_0.<UnwrapExport>b__1()
 at System.ComponentModel.Composition.Primitives.Export.GetExportedValueCore()
 at System.ComponentModel.Composition.Primitives.Export.get_Value()
 at System.ComponentModel.Composition.ExportServices.GetCastedExportedValue[T](Export export)
 at System.ComponentModel.Composition.ExportServices.<>c__DisplayClass12_0`1.<CreateStronglyTypedLazyOfT>b__1()
 at System.Lazy`1.CreateValue()
 at System.Lazy`1.LazyInitValue()
 at System.Lazy`1.get_Value()
 at Microsoft.VisualStudio.LanguageServices.TypeScript.TypeScriptPackage.SetupGlobalCommandHandlers()
 at Microsoft.VisualStudio.LanguageServices.TypeScript.TypeScriptPackage.Initialize()
 at Microsoft.VisualStudio.Shell.Package.Microsoft.VisualStudio.Shell.Interop.IVsPackage.SetSite(IServiceProvider sp)
--- End of stack trace from previous location where exception was thrown ---
 at Microsoft.VisualStudio.Composition.ExportProvider.PartLifecycleTracker.MoveToState(PartLifecycleState requiredState)
 at Microsoft.VisualStudio.Composition.ExportProvider.PartLifecycleTracker.GetValueReadyToExpose()
 at Microsoft.VisualStudio.Composition.ExportProvider.<>c__DisplayClass53_0.<CreateExport>b__0()
 at System.Lazy`1.CreateValue()
 at System.Lazy`1.LazyInitValue()
 at System.Lazy`1.get_Value()
 at Microsoft.VisualStudio.Composition.NetFxAdapters.MefV1ExportProvider.<>c__DisplayClass12_0.<UnwrapExport>b__1()
 at System.ComponentModel.Composition.Primitives.Export.GetExportedValueCore()
 at System.ComponentModel.Composition.Primitives.Export.get_Value()
 at System.ComponentModel.Composition.ExportServices.GetCastedExportedValue[T](Export export)
 at System.ComponentModel.Composition.ExportServices.<>c__DisplayClass12_0`1.<CreateStronglyTypedLazyOfT>b__1()
 at System.Lazy`1.CreateValue()
 at System.Lazy`1.LazyInitValue()
 at System.Lazy`1.get_Value()
 at Microsoft.VisualStudio.LanguageServices.TypeScript.TypeScriptPackage.SetupGlobalCommandHandlers()
 at Microsoft.VisualStudio.LanguageServices.TypeScript.TypeScriptPackage.Initialize()
 at Microsoft.VisualStudio.Shell.Package.Microsoft.VisualStudio.Shell.Interop.IVsPackage.SetSite(IServiceProvider sp)
--- End of stack trace from previous location where exception was thrown ---
 at Microsoft.VisualStudio.Composition.ExportProvider.PartLifecycleTracker.MoveToState(PartLifecycleState requiredState)
 at Microsoft.VisualStudio.Composition.ExportProvider.PartLifecycleTracker.GetValueReadyToExpose()
 at Microsoft.VisualStudio.Composition.ExportProvider.<>c__DisplayClass53_0.<CreateExport>b__0()
 at System.Lazy`1.CreateValue()
 at System.Lazy`1.LazyInitValue()
 at System.Lazy`1.get_Value()
 at Microsoft.VisualStudio.Composition.NetFxAdapters.MefV1ExportProvider.<>c__DisplayClass12_0.<UnwrapExport>b__1()
 at System.ComponentModel.Composition.Primitives.Export.GetExportedValueCore()
 at System.ComponentModel.Composition.Primitives.Export.get_Value()
 at System.ComponentModel.Composition.ExportServices.GetCastedExportedValue[T](Export export)
 at System.ComponentModel.Composition.ExportServices.<>c__DisplayClass12_0`1.<CreateStronglyTypedLazyOfT>b__1()
 at System.Lazy`1.CreateValue()
 at System.Lazy`1.LazyInitValue()
 at System.Lazy`1.get_Value()
 at Microsoft.VisualStudio.LanguageServices.TypeScript.TypeScriptPackage.SetupGloba
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…