controlflow / resharper-heapview

ReSharper Heap Allocations Viewer plugin
MIT License
303 stars 28 forks source link

MissingMethodException (2021.3 EAP) #89

Closed hankovich closed 2 years ago

hankovich commented 2 years ago

Seems like the extenson is not working in the 2021.3 EAP. Allocations are not highlighted at all.

The following exception is thrown while loading Resharper: Method not found: ICSharpStatement StatementUtil.GetNextStatement(ICSharpStatement).

Additional info ManagedThreadName = JetPool(L) #14 ManagedThreadName = JetPool(L) #4 LastExtension = cs SubProducts.0 = JetBrains dotTrace 2021.3 EAP 1 Build 2021.3.20210924.155126-eap01 SubProducts.1 = JetBrains ReSharper 2021.3 EAP 1 Build 2021.3.20210924.154743-eap01 Analyzer 'ReSharperPlugin.HeapView.Analyzers.HeapAllocationAnalyzer' threw the following exception: Method not found: 'JetBrains.ReSharper.Psi.CSharp.Tree.ICSharpStatement JetBrains.ReSharper.Psi.CSharp.Util.StatementUtil.GetNextStatement(JetBrains.ReSharper.Psi.CSharp.Tree.ICSharpStatement)'. --- EXCEPTION #1/2 [MissingMethodException] Message = “Method not found: 'JetBrains.ReSharper.Psi.CSharp.Tree.ICSharpStatement JetBrains.ReSharper.Psi.CSharp.Util.StatementUtil.GetNextStatement(JetBrains.ReSharper.Psi.CSharp.Tree.ICSharpStatement)'.” ExceptionPath = Root.InnerException ClassName = System.MissingMethodException HResult = COR_E_MISSINGMETHOD=80131513 Source = ReSharperPlugin.HeapView StackTraceString = “ at ReSharperPlugin.HeapView.CommonUtils.NextStatementsExecutionAlwaysEndsWithThrowStatement(ICSharpStatement statement) at ReSharperPlugin.HeapView.CommonUtils.IsInTheContextWhereAllocationsAreNotImportant(ITreeNode context) in /Users/jetbrains/code/resharper-plugins/external/HeapView/src/dotnet/ReSharperPlugin.HeapView/CommonUtils.cs:line 31 at ReSharperPlugin.HeapView.Analyzers.HeapAllocationAnalyzer.CheckObjectCreation(IObjectCreationExpression objectCreation, IHighlightingConsumer consumer) in /Users/jetbrains/code/resharper-plugins/external/HeapView/src/dotnet/ReSharperPlugin.HeapView/Analyzers/HeapAllocationAnalyzer.cs:line 144 at ReSharperPlugin.HeapView.Analyzers.HeapAllocationAnalyzer.Run(ITreeNode element, ElementProblemAnalyzerData data, IHighlightingConsumer consumer) in /Users/jetbrains/code/resharper-plugins/external/HeapView/src/dotnet/ReSharperPlugin.HeapView/Analyzers/HeapAllocationAnalyzer.cs:line 54 at JetBrains.ReSharper.Feature.Services.Daemon.ElementProblemAnalyzerRegistrar.ElementAnalyzerDispatcher.Run(ITreeNode element, IHighlightingConsumer consumer) ” --- Outer --- --- EXCEPTION #2/2 [LoggerException] Message = “Analyzer 'ReSharperPlugin.HeapView.Analyzers.HeapAllocationAnalyzer' threw the following exception: Method not found: 'JetBrains.ReSharper.Psi.CSharp.Tree.ICSharpStatement JetBrains.ReSharper.Psi.CSharp.Util.StatementUtil.GetNextStatement(JetBrains.ReSharper.Psi.CSharp.Tree.ICSharpStatement)'.” ExceptionPath = Root ClassName = JetBrains.Util.LoggerException Data.ManagedThreadName = “JetPool(L) #13” Data.HostProductInfo = “JetBrains ReSharper 2021.3 EAP 1 Build 213.0.20210924.153154-eap01” Data.SubProducts.#0 = “JetBrains dotTrace 2021.3 EAP 1 Build 2021.3.20210924.155126-eap01” Data.SubProducts.#1 = “JetBrains ReSharper 2021.3 EAP 1 Build 2021.3.20210924.154743-eap01” Data.SccRevisionProducts = “ dotTrace\Ide\VisualStudio, ReSharper\src: git::refs/heads/net213-eap1 ” Data.RuntimePlatform = Windows Data.OsVersion = “Microsoft Windows NT 10.0.19042.0” Data.DotNetFramework = “Microsoft .NET Framework 4.8.04084 Release 528372” Data.SccRevisionEnv = “ Platform\Core\Shell, Platform\VisualStudio\JustVs17: git::refs/heads/net213-eap1 ” Data.VsVersion = 17.0.31710.8 Data.VsPreview = True InnerException = “Exception #1 at Root.InnerException” HResult = COR_E_APPLICATION=80131600 StackTraceString = “ at JetBrains.Util.LoggerBase.Log(LoggingLevel level, String message, Exception ex) at JetBrains.Util.Logging.Logger.LogException(String comment, Exception ex) at JetBrains.ReSharper.Feature.Services.Daemon.ElementProblemAnalyzerRegistrar.ElementAnalyzerDispatcher.Run(ITreeNode element, IHighlightingConsumer consumer) at JetBrains.ReSharper.Daemon.CSharp.Stages.CSharpErrorStageProcess.ProcessAfterInterior(ITreeNode element, IHighlightingConsumer consumer) at JetBrains.ReSharper.Psi.RecursiveElementProcessorExtensions.ProcessDescendants(ITreeNode root, IRecursiveElementProcessor processor) at JetBrains.ReSharper.Psi.RecursiveElementProcessorExtensions.ProcessThisAndDescendants(ITreeNode root, IRecursiveElementProcessor processor) at JetBrains.ReSharper.Daemon.CSharp.Stages.CSharpIncrementalDaemonStageProcessBase.<>c__DisplayClass4_0.g__MemberHighlighter|0(ICSharpTypeMemberDeclaration declaration) at JetBrains.ReSharper.Psi.Extensions.<>c__DisplayClass0_0.b__0() at JetBrains.Application.Threading.Tasks.TaskHost.AccessViolationCatcher(Action action) at JetBrains.Application.Threading.Tasks.TaskHost.<>c__DisplayClass36_0.b__1(Object state) at System.Threading.Tasks.Task.Execute() at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot) at System.Threading.Tasks.Task.ExecuteEntry(Boolean bPreventDoubleExecution) at JetBrains.Application.Threading.Tasks.Scheduler.JetScheduler.ExecuteTask(Task task) at JetBrains.Application.Threading.Tasks.Scheduler.JetSchedulerThread.EnqueueNextTask() at JetBrains.Application.Threading.Tasks.Scheduler.JetSchedulerThread.ThreadPoolProc() at JetBrains.Util.Reflection.CallStackAnnotation.CatchAnnotatedInvocation[TClassOfNewFrame](String methodNameOfNewFrame, Action actionToAnnotate) at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) at System.Threading.ThreadHelper.ThreadStart() ”
matkoch commented 2 years ago

It's working for me. You probably didn't update the extension.