EmmyLua / IntelliJ-EmmyLua

Lua IDE/Debugger Plugin for IntelliJ IDEA
https://emmylua.github.io
Apache License 2.0
1.74k stars 293 forks source link

skynet的调用跳转定义报错 #405

Open medetasi opened 3 years ago

medetasi commented 3 years ago

Environment(环境)

name version
IDEA version idea 社区版 2020.3
EmmyLua version v1.3.5.149
OS Windows 10

What are the steps to reproduce this issue?(重现步骤?)

  1. https://github.com/cloudwu/skynet/blob/master/lualib/skynet.lua require这个文件,打开ide,不要打开这个文件,然后点一次跳转就会报错,没办法跳过去。 如果手动打开一下这个文件,再关闭,后面跳转就没问题了 例如: local skynet = require("skynet") skynet.call() 点击call跳转会报错

What happens?(出现什么问题?)

What were you expecting to happen?(期望?)

Any logs, error output, etc?(有没有什么log, error输出?)

(If it’s long, please paste to https://ghostbin.com/ and insert the link here.)

com.intellij.psi.stubs.UpToDateStubIndexMismatch: PSI and index do not match. Please report the problem to JetBrains with the files attached INDEXED VERSION IS THE CURRENT ONE file=FILE, file.class=class com.tang.intellij.lua.psi.LuaPsiFile, file.lang=Language: Lua, modStamp=1 AST INCONSISTENT, perhaps after incremental reparse; FILE stub debugInfo=created in getStubTree(), with AST = false; with backReference latestIndexedStub=StubTree{myDebugInfo='created from index; with backReference', myRoot=LuaFileStub}1036254767 same size=true debugInfo=created from index; with backReference viewProvider=com.intellij.psi.SingleRootFileViewProvider{vFile=file://E:/work/server/lualib/skynet.lua, vFileId=459, content=VirtualFileContent{size=20861}, eventSystemEnabled=true} viewProvider stamp: 0; file stamp: 0; file modCount: 1607334851930; file length: 20861 doc saved: true; doc stamp: 0; doc size: 20861; committed: true indexing info: indexing timestamp = 1607334851930, binary = false, byte size = 20861, char size = 20861 at com.intellij.psi.stubs.StubTreeLoader.handleUpToDateMismatch(StubTreeLoader.java:135) at com.intellij.psi.stubs.StubTreeLoader.stubTreeAndIndexDoNotMatch(StubTreeLoader.java:128) at com.intellij.psi.impl.source.FileTrees.reconcilePsi(FileTrees.java:201) at com.intellij.psi.impl.source.FileTrees.withAst(FileTrees.java:149) at com.intellij.psi.impl.source.PsiFileImpl.loadTreeElement(PsiFileImpl.java:216) at com.intellij.psi.impl.source.PsiFileImpl.calcTreeElement(PsiFileImpl.java:734) at com.intellij.extapi.psi.StubBasedPsiElementBase.getNode(StubBasedPsiElementBase.java:128) at com.intellij.extapi.psi.ASTDelegatePsiElement.findChildByType(ASTDelegatePsiElement.java:183) at com.tang.intellij.lua.psi.impl.LuaClassMethodNameImpl.getId(LuaClassMethodNameImpl.java:49) at com.tang.intellij.lua.psi.LuaPsiImplUtilKt.getNameIdentifier(LuaPsiImplUtil.kt:82) at com.tang.intellij.lua.psi.impl.LuaClassMethodDefImpl.getNameIdentifier(LuaClassMethodDefImpl.java:93) at com.tang.intellij.lua.psi.LuaPsiImplUtilKt.getTextOffset(LuaPsiImplUtil.kt:443) at com.tang.intellij.lua.psi.impl.LuaClassMethodDefImpl.getTextOffset(LuaClassMethodDefImpl.java:110) at com.intellij.ide.util.EditSourceUtil.getDescriptor(EditSourceUtil.java:41) at com.intellij.ide.util.PsiNavigationSupportImpl.getDescriptor(PsiNavigationSupportImpl.java:31) at com.intellij.psi.impl.PsiElementBase.navigate(PsiElementBase.java:194) at com.intellij.codeInsight.navigation.actions.UiKt.gotoTarget(ui.kt:29) at com.intellij.codeInsight.navigation.actions.GotoDeclarationOnlyHandler2.recordAndNavigate(GotoDeclarationOnlyHandler2.kt:95) at com.intellij.codeInsight.navigation.actions.GotoDeclarationOnlyHandler2.gotoDeclaration$intellij_platform_lang_impl(GotoDeclarationOnlyHandler2.kt:65) at com.intellij.codeInsight.navigation.actions.GotoDeclarationOrUsageHandler2.invoke(GotoDeclarationOrUsageHandler2.kt:64) at com.intellij.codeInsight.actions.CodeInsightAction.lambda$actionPerformedImpl$0(CodeInsightAction.java:58) at com.intellij.codeInsight.actions.CodeInsightAction.lambda$actionPerformedImpl$1(CodeInsightAction.java:64) at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:220) at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:177) at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:158) at com.intellij.codeInsight.actions.CodeInsightAction.actionPerformedImpl(CodeInsightAction.java:55) at com.intellij.codeInsight.actions.CodeInsightAction.actionPerformed(CodeInsightAction.java:33) at com.intellij.codeInsight.navigation.actions.GotoDeclarationAction.actionPerformed(GotoDeclarationAction.java:78) at com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAware(ActionUtil.java:281) at com.intellij.openapi.keymap.impl.IdeMouseEventDispatcher.dispatchMouseEvent(IdeMouseEventDispatcher.java:275) at com.intellij.ide.IdeEventQueue.dispatchMouseEvent(IdeEventQueue.java:910) at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:840) at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$8(IdeEventQueue.java:454) at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:773) at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$9(IdeEventQueue.java:453) at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:822) at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:507) at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90) Caused by: java.lang.AssertionError: Stub count doesn't match stubbed node length at com.intellij.psi.impl.source.FileTrees.lambda$reconcilePsi$5(FileTrees.java:189) at com.intellij.psi.impl.DebugUtil.performPsiModification(DebugUtil.java:577) at com.intellij.psi.impl.source.FileTrees.reconcilePsi(FileTrees.java:182) ... 40 more

Any other comments?(其它说明)