SourceTree无法启动,打开闪退

日志里报错如下:

ERROR [2023-06-30 09:12:55,607] [1] [Sourcetree.Composition.VSMef.Net48.VSMefCompositionManager] [Log] - Unable to load MEF components
System.InvalidOperationException: 序列不包含任何元素
   在 System.Linq.Enumerable.First[TSource](IEnumerable`1 source)
   在 Microsoft.VisualStudio.Composition.PartDiscovery.GetElementTypeFromMany(Type type)
   在 Microsoft.VisualStudio.Composition.RuntimeComposition.RuntimeImport.get_ImportingSiteTypeWithoutCollection()
   在 Microsoft.VisualStudio.Composition.RuntimeComposition.RuntimeImport.get_IsLazy()
   在 Microsoft.VisualStudio.Composition.RuntimeComposition.RuntimeImport.get_LazyFactory()
   在 Microsoft.VisualStudio.Composition.RuntimeExportProviderFactory.RuntimeExportProvider.GetValueForImportSite(RuntimePartLifecycleTracker importingPartTracker, RuntimeImport import)
   在 Microsoft.VisualStudio.Composition.RuntimeExportProviderFactory.RuntimeExportProvider.RuntimePartLifecycleTracker.SatisfyImports()
   在 Microsoft.VisualStudio.Composition.ExportProvider.PartLifecycleTracker.SatisfyImmediateImports()
   在 Microsoft.VisualStudio.Composition.ExportProvider.PartLifecycleTracker.MoveNext(PartLifecycleState nextState)
   在 Microsoft.VisualStudio.Composition.ExportProvider.PartLifecycleTracker.MoveToState(PartLifecycleState requiredState)
   在 Microsoft.VisualStudio.Composition.ExportProvider.PartLifecycleTracker.GetValueReadyToExpose()
   在 Microsoft.VisualStudio.Composition.RuntimeExportProviderFactory.RuntimeExportProvider.<>c__DisplayClass15_0.<GetExportedValueHelper>b__0()
   在 Microsoft.VisualStudio.Composition.RuntimeExportProviderFactory.RuntimeExportProvider.GetValueForImportElement(RuntimePartLifecycleTracker importingPartTracker, RuntimeImport import, RuntimeExport export, Func`3 lazyFactory)
   在 Microsoft.VisualStudio.Composition.RuntimeExportProviderFactory.RuntimeExportProvider.GetValueForImportSite(RuntimePartLifecycleTracker importingPartTracker, RuntimeImport import)
   在 Microsoft.VisualStudio.Composition.RuntimeExportProviderFactory.RuntimeExportProvider.RuntimePartLifecycleTracker.<CreateValue>b__10_0(RuntimeImport import)
   在 System.Linq.Enumerable.WhereSelectArrayIterator`2.MoveNext()
   在 System.Linq.Buffer`1..ctor(IEnumerable`1 source)
   在 System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)
   在 Microsoft.VisualStudio.Composition.RuntimeExportProviderFactory.RuntimeExportProvider.RuntimePartLifecycleTracker.CreateValue()
   在 Microsoft.VisualStudio.Composition.ExportProvider.PartLifecycleTracker.Create()
   在 Microsoft.VisualStudio.Composition.ExportProvider.PartLifecycleTracker.MoveNext(PartLifecycleState nextState)
   在 Microsoft.VisualStudio.Composition.ExportProvider.PartLifecycleTracker.MoveToState(PartLifecycleState requiredState)
   在 Microsoft.VisualStudio.Composition.ExportProvider.PartLifecycleTracker.GetValueReadyToExpose()
   在 Microsoft.VisualStudio.Composition.RuntimeExportProviderFactory.RuntimeExportProvider.<>c__DisplayClass15_0.<GetExportedValueHelper>b__0()
   在 Microsoft.VisualStudio.Composition.RuntimeExportProviderFactory.RuntimeExportProvider.GetValueForImportElement(RuntimePartLifecycleTracker importingPartTracker, RuntimeImport import, RuntimeExport export, Func`3 lazyFactory)
   在 Microsoft.VisualStudio.Composition.RuntimeExportProviderFactory.RuntimeExportProvider.GetValueForImportSite(RuntimePartLifecycleTracker importingPartTracker, RuntimeImport import)
   在 Microsoft.VisualStudio.Composition.RuntimeExportProviderFactory.RuntimeExportProvider.RuntimePartLifecycleTracker.<CreateValue>b__10_0(RuntimeImport import)
   在 System.Linq.Enumerable.WhereSelectArrayIterator`2.MoveNext()
   在 System.Linq.Buffer`1..ctor(IEnumerable`1 source)
   在 System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)
   在 Microsoft.VisualStudio.Composition.RuntimeExportProviderFactory.RuntimeExportProvider.RuntimePartLifecycleTracker.CreateValue()
   在 Microsoft.VisualStudio.Composition.ExportProvider.PartLifecycleTracker.Create()
   在 Microsoft.VisualStudio.Composition.ExportProvider.PartLifecycleTracker.MoveNext(PartLifecycleState nextState)
   在 Microsoft.VisualStudio.Composition.ExportProvider.PartLifecycleTracker.MoveToState(PartLifecycleState requiredState)
   在 Microsoft.VisualStudio.Composition.ExportProvider.PartLifecycleTracker.GetValueReadyToExpose()
   在 System.Lazy`1.CreateValue()
   在 System.Lazy`1.LazyInitValue()
   在 Microsoft.VisualStudio.Composition.NetFxAdapters.MefV1ExportProvider.<>c__DisplayClass12_0.<UnwrapExport>b__1()
   在 System.ComponentModel.Composition.Primitives.Export.get_Value()
   在 System.ComponentModel.Composition.ReflectionModel.ImportingItem.Cast(Type type, Export export)
   在 System.ComponentModel.Composition.ReflectionModel.ReflectionComposablePart.SetImport(ImportingItem item, Export[] exports)
   在 System.ComponentModel.Composition.Hosting.ImportEngine.PartManager.TrySetImport(ImportDefinition import, Export[] exports)
   在 System.ComponentModel.Composition.Hosting.ImportEngine.TrySatisfyImportSubset(PartManager partManager, IEnumerable`1 imports, AtomicComposition atomicComposition)
   在 System.ComponentModel.Composition.Hosting.ImportEngine.TrySatisfyImportsStateMachine(PartManager partManager, ComposablePart part)
   在 System.ComponentModel.Composition.Hosting.ImportEngine.TrySatisfyImports(PartManager partManager, ComposablePart part, Boolean shouldTrackImports)
   在 System.ComponentModel.Composition.Hosting.ImportEngine.SatisfyImportsOnce(ComposablePart part)
   在 System.ComponentModel.Composition.Hosting.CompositionContainer.SatisfyImportsOnce(ComposablePart part)
   在 System.ComponentModel.Composition.AttributedModelServices.SatisfyImportsOnce(ICompositionService compositionService, Object attributedPart)
   在 Sourcetree.Composition.VSMef.Net48.VSMefCompositionManager.<Compose>d__5.MoveNext()

删除下面目录的两个文件重新打开SourceTree即可

C:\Users\yourname\AppData\Local\Atlassian\SourceTree.exe_<UID>\3.4.9.0\Assemblies.cache
C:\Users\yourname\AppData\Local\Atlassian\SourceTree.exe_<UID>\3.4.9.0\Composition.cache

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Sourcetree是一款常用的版本控制工具,而程序双击就闪退可能出现的原因有很多。一般来说,这种问题可能是由于以下几个方面引起的。 首先,可能是由于软件本身存在问题。Sourcetree有时会出现一些程序错误,特别是在某些操作系统或硬件环境下。这种情况下,建议检查软件的最新版本,并尝试重新安装或更新软件,以确保使用的是最新版本,从而解决可能存在的程序问题。 其次,双击闪退还可能与操作系统或硬件环境有关。某些操作系统的兼容性可能会导致软件无法正常运行或闪退。此时,建议检查操作系统的要求,并尝试更新或修复操作系统,以确保软件能够与操作系统正常配合。 此外,还可能是由于电脑内存或磁盘空间不足引起的。如果电脑内存不足,运行一些大型的软件程序可能会导致闪退。解决办法是关闭其他占用内存较大的程序,或者升级电脑内存。另外,如果磁盘空间不足,导致软件无法正常运行,则可以尝试清理磁盘垃圾、删除不必要的文件或扩容硬盘来解决问题。 最后,有时候闪退问题可能还与其他软件或插件的冲突有关。如果在安装Sourcetree之前安装了其他软件或插件,可能会引起冲突而导致闪退。此时,建议关闭其他软件或插件,然后重新启动电脑和Sourcetree,看是否能够解决该问题。 综上所述,软件双击就闪退可能是由于软件本身问题、操作系统或硬件环境、电脑内存或磁盘空间不足,或者与其他软件或插件的冲突有关。通过不同的解决办法,可以尝试解决该问题,让Sourcetree能够正常运行。 ### 回答2: 如果在使用SourceTree软件时双击后软件立即闪退,可能是由于以下原因之一: 1. 版本不兼容:首先请确保你使用的是最新版本的SourceTree软件。如果你使用的是旧版本,可以尝试升级到最新版本来解决问题。 2. 系统兼容性问题:SourceTree软件可能不兼容你当前的操作系统。检查一下软件的最低系统要求,并确保你的操作系统满足这些要求。 3. 软件损坏或错误配置:如果软件文件损坏或配置错误,它可能导致软件闪退。尝试重新安装SourceTree软件,确保从官方网站下载最新的安装文件,并正确安装软件。 4. 冲突的软件或驱动程序:某些冲突的软件或驱动程序可能导致SourceTree闪退。尝试禁用其他可能与软件冲突的程序,或更新相关的驱动程序。 5. 数据库问题:SourceTree软件使用一个内置的数据库来保存项目和设置。有时,数据库文件可能损坏或出现问题,导致软件闪退。尝试修复或重建软件的数据库文件。 如果以上方法不能解决问题,你可以尝试联系SourceTree的技术支持团队,他们可能更有能力帮助你解决相关问题。 ### 回答3: 当用户双击打开sourcetree软件时,软件闪退的问题可能由多个原因引起。以下是可能的解决方案: 首先,确保你的电脑符合软件的最低系统要求。查看sourcetree的官方网站或文档,了解软件所需的操作系统版本、CPU和内存要求等信息。如果你的系统不符合要求,你可能需要升级你的操作系统或硬件,以确保软件的正常运行。 其次,尝试重新安装sourcetree软件。首先,卸载旧版本的sourcetree,然后从官方网站下载最新的软件安装包。确保下载正确版本的软件,可能有稳定版和测试版等不同版本。然后,按照安装向导的指示,重新安装sourcetree软件。 如果重新安装仍然没有解决问题,可以尝试修复软件。打开控制面板,选择“程序和功能”,找到sourcetree,选择修复选项。这将尝试修复软件中可能出现的错误,帮助解决闪退问题。 如果问题仍然存在,可以尝试更新你的操作系统和驱动程序。确保你的Windows更新是最新的,同时检查并更新你的显卡和其他硬件的驱动程序。有时,旧的驱动程序可能与软件不兼容,导致闪退等问题。 最后,如果所有上述方法都无法解决问题,你可以联系sourcetree的技术支持或社区,向他们报告问题并获取进一步的帮助和支持。技术支持团队将根据你提供的详细信息和日志文件等来帮助诊断和解决问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值