我正在几个VSIX项目中工作,由于某种原因,突然之间,我无法正确调试它们。当我运行项目时,实验性VS实例打开时没有问题,但是一旦加载解决方案,问题便开始出现。
首先,如果我要加载的解决方案处于源代码控制之下,则会收到以下错误消息:
'GitCollaborationPackage'软件包未正确加载。该问题可能是由于配置更改引起的或通过安装其他扩展程序。
还有一个指向日志文件的链接,其中显示了一个似乎不太有用的错误消息:
LegacySitePackage对于软件包[GitCollaborationPackage]失败来源:“”描述:灾难性失败(来自HRESULT的异常:0x8000FFFF(E_UNEXPECTED))
此解决方案加载后,但是当我尝试打开文件时,出现此错误:
预期具有合同名称的1个出口“ Microsoft.VisualStudio.Text.Editor.ITextEditorFactoryService”但是应用适用的约束后发现0。
我没有对项目进行任何重大更改,但是以防万一我创建了一个新的VSIX项目并立即运行它,并且结果相同。
根据MSDN的建议,我尝试delete Visual Studio's component cache and reset Visual Studio's settings,无济于事。
那么这是怎么回事?我该怎么做才能解决此问题?
UPDATE:一些新发现:
devenv /safemode
运行Visual Studio时,问题仍然存在。UPDATE 2:修复Visual Studio没有帮助。
这不是答案,但是已经有两年了,问题仍然很严重,所以我认为为将来的调查而增加一些细节可能是值得的。
在我的计算机上,实验实例今天早些时候可以运行,但是现在失败了。初始错误最常读为
'RoslynPackage'软件包未正确加载。该问题可能是由于配置更改或安装其他扩展程序引起的。您可以通过检查文件'C:\ Users ... \ AppData \ Roaming \ Microsoft \ VisualStudio \ 15.0_b0b65856Exp \ ActivityLog.xml'获得更多信息。
但是失败的包有时会发生变化,并且在任何情况下,第二个错误(涉及ITextEditorFactoryService)都将很快出现。
删除AppData中的两个VisualStudio \ 15.0_b0b65856Exp文件夹没有帮助,所以我尝试卸载并重新安装VS2017。那也没有帮助。
我尝试调试“已知良好的” Visual Studio扩展。同样的错误。我尝试加载一个简单的文本文件。同样的错误。
所以我转到Visual Studio 2019社区(在开始出现故障之前已经安装了)。 VS 2019也会失败,但其行为略有不同:第一个错误消息未出现,第二个错误已稍作修改(请注意“ 2”):
预期合同名称为“ Microsoft.VisualStudio.Text.Editor.ITextEditorFactoryService2的1个导出,但在应用适用的约束后发现0。”>
[我注意到,当我重新安装VS2017时,它仍然使用以前安装中剩下的设置。当实验实例开始时,它会问我想要哪个主题。我告诉它使用“蓝色主题”,并且使用了几秒钟,但是随后它加载了“黑暗主题”,该主题与主实例使用的主题相同。这导致了一个假设,即故障是由实验实例选择加载的“僵尸”配置设置引起的,而这个设置我们只是不知道如何摆脱。但是,我尝试立即将.cs文件拖到实验实例上(在加载深色主题之前),并且仍然发生错误。另外,我尝试了“工具”->“导入和导出设置”->“重置所有设置(在实验实例内部)”,这没有帮助。
在我的情况下,命令行参数/rootsuffix Exp /safemode
阻止了错误的发生,但这是没有用的,因为它还会阻止我尝试调试的VSIX的加载。
这里是ActivityLog.xml中提到“错误”一词的条目:
<entry> <record>523</record> <time>2020/03/11 00:20:56.182</time> <type>Warning</type> <source>VisualStudio</source> <description>Unexpected system error mode before loading package [ProviderPackage]</description> <guid>{5F2E5E42-4192-4D79-A0D8-1D881E808829}</guid> </entry> <entry> <record>527</record> <time>2020/03/11 00:20:56.494</time> <type>Warning</type> <source>VisualStudio</source> <description>Unexpected system error mode before loading package [Microsoft.VisualStudio.Shell.Connected.Packages.PathTrustVerifier.PathTrustVerifierPackage]</description> <guid>{2F6B5046-3BB0-4825-B344-3F4238921119}</guid> </entry> <entry> <record>531</record> <time>2020/03/11 00:20:56.511</time> <type>Warning</type> <source>VisualStudio</source> <description>Unexpected system error mode before loading package [CSharpPackage]</description> <guid>{13C3BBB4-F18F-4111-9F54-A0FB010D9194}</guid> </entry> <entry> <record>534</record> <time>2020/03/11 00:20:56.590</time> <type>Warning</type> <source>VisualStudio</source> <description>Unexpected system error mode before loading package [RoslynPackage]</description> <guid>{6CF2E545-6109-4730-8883-CF43D7AEC3E1}</guid> </entry> <entry> <record>537</record> <time>2020/03/11 00:20:56.811</time> <type>Warning</type> <source>VisualStudio</source> <description>Unexpected system error mode before loading package [ErrorListPackage]</description> <guid>{4A9B7E50-AA16-11D0-A8C5-00A0C921A4D2}</guid> </entry> <entry> <record>541</record> <time>2020/03/11 00:20:57.014</time> <type>Warning</type> <source>VisualStudio</source> <description>Unexpected system error mode before loading package [Text Management Package]</description> <guid>{F5E7E720-1401-11D1-883B-0000F87579D2}</guid> </entry> <entry> <record>545</record> <time>2020/03/11 00:20:57.026</time> <type>Warning</type> <source>VisualStudio</source> <description>Unexpected system error mode before loading package [Microsoft.VisualStudio.Editor.Implementation.EditorPackage]</description> <guid>{E269B994-EF71-4CE0-8BCD-581C217372E8}</guid> </entry> <entry> <record>548</record> <time>2020/03/11 00:20:57.457</time> <type>Error</type> <source>VisualStudio</source> <description>LegacySitePackage failed for package [RoslynPackage]Source: 'Microsoft.VisualStudio.Composition' Description: Expected 1 export(s) with contract name "Microsoft.VisualStudio.LanguageServices.Implementation.TableDataSource.VisualStudioDiagnosticListTableCommandHandler" but found 0 after applying applicable constraints.
Microsoft.VisualStudio.Composition.CompositionFailedException: Expected 1 export(s) with contract name "Microsoft.VisualStudio.LanguageServices.Implementation.TableDataSource.VisualStudioDiagnosticListTableCommandHandler" but found 0 after applying applicable constraints.
 at Microsoft.VisualStudio.Composition.ExportProvider.GetExports(ImportDefinition importDefinition)
 at Microsoft.VisualStudio.Composition.ExportProvider.GetExports[T,TMetadataView](String contractName, ImportCardinality cardinality)
 at Microsoft.VisualStudio.Composition.ExportProvider.GetExport[T,TMetadataView](String contractName)
 at Microsoft.VisualStudio.Composition.ExportProvider.GetExport[T](String contractName)
 at Microsoft.VisualStudio.Composition.ExportProvider.GetExport[T]()
 at Microsoft.VisualStudio.Composition.ExportProvider.GetExportedValue[T]()
 at Microsoft.VisualStudio.ComponentModelHost.ComponentModel.GetService[T]()
 at Microsoft.VisualStudio.LanguageServices.Setup.RoslynPackage.LoadComponentsInUIContext()
 at Microsoft.VisualStudio.LanguageServices.Implementation.LanguageService.AbstractPackage.LoadComponentsInUIContextOnceSolutionFullyLoaded()
 at Microsoft.VisualStudio.LanguageServices.Setup.RoslynPackage.Initialize()
 at Microsoft.VisualStudio.Shell.Package.Microsoft.VisualStudio.Shell.Interop.IVsPackage.SetSite(IServiceProvider sp)</description> <guid>{6CF2E545-6109-4730-8883-CF43D7AEC3E1}</guid> <hr>80131500</hr> <errorinfo></errorinfo> </entry> <entry> <record>549</record> <time>2020/03/11 00:20:57.469</time> <type>Error</type> <source>VisualStudio</source> <description>SetSite failed for package [RoslynPackage](null)</description> <guid>{6CF2E545-6109-4730-8883-CF43D7AEC3E1}</guid> <hr>80131500</hr> <errorinfo></errorinfo> </entry> <entry> <record>551</record> <time>2020/03/11 00:20:57.479</time> <type>Warning</type> <source>VisualStudio</source> <description>Unexpected system error mode before loading package [Visual Studio Component Enumerator Package]</description> <guid>{588205E0-66E0-11D3-8600-00C04F6123B3}</guid> </entry> <entry> <record>555</record> <time>2020/03/11 00:20:57.490</time> <type>Error</type> <source>VisualStudio</source> <description>End package load [RoslynPackage]</description> <guid>{6CF2E545-6109-4730-8883-CF43D7AEC3E1}</guid> <hr>80131500</hr> <errorinfo></errorinfo> </entry>
注意:以上错误是ActivityLog.xml中的最后一项;第二个错误没有显示在这里。